PHP 파일을 변수에 어떻게로드합니까?
PHP 파일을 변수에로드해야합니다. 처럼include();
다음과 같은 간단한 HTML 파일을로드했습니다.
$Vdata = file_get_contents("textfile.txt");
하지만 이제 PHP 파일을로드해야합니다.
다음을 사용하는 경우 PHP 에 의해 생성 된 콘텐츠 를 얻고 싶다고 가정합니다 .
$Vdata = file_get_contents('http://YOUR_HOST/YOUR/FILE.php');
그렇지 않으면 PHP 파일 의 소스 코드 를 얻으려면 .txt 파일과 동일합니다.
$Vdata = file_get_contents('path/to/YOUR/FILE.php');
ob_start();
include "yourfile.php";
$myvar = ob_get_clean();
eyze가 제안한 것처럼 http : //를 사용 하는 경우 PHP 스크립트의 출력 만 읽을 수 있습니다. 실행중인 스크립트와 동일한 서버에있는 경우에만 PHP 스크립트 자체를 읽을 수 있습니다. 그런 다음 다음과 같은 것을 사용할 수 있습니다.
$Vdata = file_get_contents('/path/to/your/file.php");
웹 서버를 통해 실행하지 않고 파일을로드하려면 다음이 작동합니다.
$string = eval(file_get_contents("file.php"));
그러면 파일 내용이로드됩니다. PHP 파일은 평가 를 위해 <?php
및 ?>
태그 로 완전히 구성 eval
되어야합니다.
이론적으로는 fopen을 사용한 다음 stream_get_contents를 사용할 수 있습니다.
$stream = fopen("file.php","r");
$string = stream_get_contents($stream);
fclose($stream);
전체 파일을 $ string으로 읽어야하며 평가해서는 안됩니다. 나는 당신이 로컬 경로를 지정할 때 file_get_contents가 작동하지 않았다는 것에 놀랐습니다 ....
또는 출력 버퍼링을 시작하고 포함 / 요구를 수행 한 다음 버퍼링을 중지 할 수 있습니다. ob_get_contents ()를 사용하면 다른 PHP 파일에서 출력 한 내용을 변수로 가져올 수 있습니다.
파일에 다음과 같은 return 문이있는 경우 :
<?php return array(
'AF' => 'Afeganistão',
'ZA' => 'África do Sul',
...
'ZW' => 'Zimbabué'
);
이것을 다음과 같은 변수로 가져올 수 있습니다.
$data = include $filePath;
서버에서 allow_url_fopen 이 꺼져 있으면 file_get_contents ()가 작동하지 않습니다 . 대부분의 공유 웹 호스트는 보안 위험으로 인해 기본적으로 꺼져 있습니다. 또한 PHP6 에서는 allow_url_fopen 옵션이 더 이상 존재하지 않으며 모든 기능이 영구적으로 꺼져있는 것처럼 작동합니다. 따라서 이것은 사용하기에 매우 나쁜 방법입니다.
http를 통해 파일에 액세스하는 경우 사용하는 가장 좋은 옵션은 cURL입니다.
참고 URL : https://stackoverflow.com/questions/1272228/how-do-i-load-a-php-file-into-a-variable
'development' 카테고리의 다른 글
div가 자바 스크립트와 함께 존재하지 않는지 확인하십시오. (0) | 2020.09.04 |
---|---|
개인 메서드의 단위 테스트 (0) | 2020.09.04 |
반응 렌더링 기능에서 동적 href를 만드는 방법은 무엇입니까? (0) | 2020.09.04 |
조건부 변수 대 세마포 (0) | 2020.09.04 |
Google API를 통해 사용자 정보 얻기 (0) | 2020.09.04 |