변수에 필요한/변수로 변환
파일을 요구/포함하고 파일의 내용을 변수로 검색합니다.
시험을 보다
<?php
echo "seconds passed since 01-01-1970 00:00 GMT is ".time();
?>
색인.
<?php
$test=require("test.php");
echo "the content of test.php is:<hr>".$test;
?>
맘에 들다file_get_contents()
하지만 여전히 PHP 코드를 실행해야 하는 것보다.이것이 가능합니까?
포함된 파일이 변수를 반환한 경우...
포함합니다.
<?php
return 'abc';
그런 다음 변수에 할당할 수 있습니다.
$abc = include 'include.php';
그렇지 않으면 출력 버퍼링을 사용합니다.
ob_start();
include 'include.php';
$buffer = ob_get_clean();
저도 이 문제가 한 번 있어요, 비슷한 것을 시도해 보세요.
<?php
function requireToVar($file){
ob_start();
require($file);
return ob_get_clean();
}
$test=requireToVar($test);
?>
포함된 파일에 쓸 수 있습니다.
<?php
return 'seconds etc.';
그리고 당신이 포함하고 있는 파일에서:
<?php
$text = include('file.php'); // just assigns value returned in file
PHP/7에서는 자체 호출 익명 함수를 사용하여 간단한 캡슐화를 수행하고 글로벌 범위가 임의의 글로벌 변수로 오염되지 않도록 할 수 있습니다.
return (function () {
// Local variables (not exported)
$current_time = time();
$reference_time = '01-01-1970 00:00';
return "seconds passed since $reference_time GMT is $current_time";
})();
PHP/5.3+의 대체 구문은 다음과 같습니다.
return call_user_func(function(){
// Local variables (not exported)
$current_time = time();
$reference_time = '01-01-1970 00:00';
return "seconds passed since $reference_time GMT is $current_time";
});
그런 다음 일반적으로 변수 이름을 선택할 수 있습니다.
$banner = require 'test.php';
사용합니다. 실행의 출력을 반환합니다.
생각합니다eval(file_get_contents('include.php'))
도와주세요.shell_exec과 같은 다른 실행 방법은 호스팅에서 사용할 수 없도록 설정될 수 있습니다.
require/required는 파일의 내용을 반환하지 않습니다.당신이 하려는 일을 달성하기 위해서는 별도의 전화를 해야 할 것입니다.
편집
사용.echo
당신이 원하는 것을 못하게 할 것입니다.그러나 파일의 내용을 반환하면 설명서에 명시된 대로 작업이 완료됩니다. - http://www.php.net/manual/en/function.include.php
필요하거나 포함된 php 파일이 무언가(array, object, string, int, variable 등)를 반환하는 경우에만 가능합니다.
$var = require '/dir/file.php';
그러나 php 파일이 아니고 이 파일의 내용을 평가하려면 다음을 수행할 수 있습니다.
<?php
function get_file($path){
return eval(trim(str_replace(array('<?php', '?>'), '', file_get_contents($path))));
}
$var = get_file('/dir/file.php');
아니면 이런 것들이
파일에 포함하여php:
<?php
//include.php file
$return .= "value1 ";
$return .= time();
다른 php 파일에서 (이 파일의 내용이 무엇이든 상관 없음):
<?php
// other.php file
function() {
$return = "Values are: ";
include "path_to_file/include.php";
return $return;
}
반환은 다음과 같이 표시됩니다.
Values are: value1, 145635165
요점은 포함된 파일의 내용이 제가 제공한 예에서 기능의 내용과 동일한 범위를 가지고 있다는 것입니다.
언급URL : https://stackoverflow.com/questions/5948395/require-include-into-variable
'programing' 카테고리의 다른 글
XML 파일을 통해 TextView 굵은 글씨로 표시하시겠습니까? (0) | 2023.09.04 |
---|---|
MariaDB to Zarr Array, 어떻게 해야 하나요? (0) | 2023.09.04 |
오류 "입력 장치가 TTY가 아닙니다." (0) | 2023.09.04 |
서블릿 필터에서 스프링 빈을 얻으려면 어떻게 해야 합니까? (0) | 2023.09.04 |
RStudio를 사용하여 MariaDB 원격 서버에 연결 (0) | 2023.09.04 |