Я попробовал:
$test = include 'test.php';
Но это просто включало файл обычно
Вы захотите посмотреть на функции буферизации вывода.
//get anything that's in the output buffer, and empty the buffer
$oldContent = ob_get_clean();
//start buffering again
ob_start();
//include file, capturing output into the output buffer
include "test.php";
//get current output buffer (output from test.php)
$myContent = ob_get_clean();
//start output buffering again.
ob_start();
//put the old contents of the output buffer back
echo $oldContent;
Отредактируйте:
Как указывает Джереми, стек буферов вывода. Таким образом, вы могли бы теоретически просто сделать что-то вроде:
<?PHP
function return_output($file){
ob_start();
include $file;
return ob_get_clean();
}
$content = return_output('some/file.php');
Это должно быть эквивалентно моему более добросовестному оригинальному решению.
Но я не беспокоился о тестировании этого.
Попробуйте file_get_contents ()
.
Эта функция похожа на
файл ()
, за исключением того, чтоFile_Get_Contents ()
возвращает файл в строке.
Попробуйте что-нибудь вроде:
ob_start();
include('test.php');
$content = ob_get_clean();