У меня есть PHP-скрипт, который я хочу запустить в командной строке. Этот скрипт, среди прочего, должен загрузить файл PHP, содержащий как PHP, так и HTML-контент, и получить визуализированный вывод из этого файла.
Этот код делает именно то, что мне нужно, но не при запуске из командной строки:
<?php
// ...
if(file_exists($content_file)) {
ob_start();
include($content_file);
$content = ob_get_contents();
ob_end_clean();
}
?>
При запуске в браузере мой скрипт получает обработанный вывод файла PHP через include() и сохраняет вывод в $content.
Однако, когда я запускаю этот сценарий в командной строке, содержимое файла PHP выводится, а $content никогда не устанавливается.
Я искал документацию, но ничего не работает. Вызов ini_set('implicit_flush', false) не имеет никакого эффекта, равно как и ob_implicit_flush(0);
Есть предположения?
@
обычно считается плохой практикой. - person Charles   schedule 05.04.2011ob_start(NULL,0)
, а также убедитесь, что в вашем включаемом файле нетob_flush()
. - person mario   schedule 05.04.2011