получение данных из переменной php - PullRequest
0 голосов
/ 03 апреля 2012

$ content = file_get_contents ('file.php');

echo $ content;

ничего не отображается, ожидайте при отображении исходного кода страницы в браузере на дисплее это

<? foreach(glob("folder/*.php") as $class_filename) { require_once($class_filename); } ?>

, поэтому при получении содержимого сценарий не будет выполняться.

file.php содержит этот код <? foreach(glob("folder/*.php") as $class_filename) { require_once($class_filename); } ?>

и если я сделаю следующее

$content = foreach(glob("folder/*.php") as $class_filename) { require_once($class_filename); } ?>

жалуется на неожиданный foreach ...

есть ли способ прочитать содержимое папки / .php в одну переменную $ и затем вывести на экран / распечатать все файлы папки / .php на странице, где она должна быть?

спасибо за помощь уже.

Ответы [ 2 ]

1 голос
/ 03 апреля 2012

То, что вы пытаетесь, не выполнит содержимое файла "file.php", jsut отобразит их содержимое на экране.

Если вы хотите выполнить файл file.php, используйте eval ($content)

Чтобы захватить вывод, используйте что-то вроде:

ob_start();              // Don't echo anything but buffer it up

$codeToRun=file_get_contents('file.php'); // Get the contents of file.php
eval ($codeToRun);       // Run the contents of file.php
$content=ob_get_flush(); // Dump anything that should have been echoed to a variable and stop buffering

echo $content;           //echo the stuff that should have been echoed above
1 голос
/ 03 апреля 2012

Это то, что вы хотите сделать?

$content = '';
foreach (glob('folder/*.php') as $class){$content .= file_get_contents($class);}
echo $content;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...