Эхо заявления не очищаются должным образом? - PullRequest
0 голосов
/ 27 июля 2011

Я пытался отлаживать этот код в течение нескольких часов, но ничего не добился.Мои печатные заявления просто не работают.Другой вопрос предложил мне flush (), но он не работает.

echo 'this never prints';
flush();
flush();
flush();

Любая помощь будет оценена.

Ответы [ 3 ]

3 голосов
/ 27 июля 2011

Я думаю, у вас отключена директива display_errors. Проверьте файл php.ini, чтобы убедиться, что это так.

Ваш код имеет синтаксическую ошибку; Вы пропустили точку с запятой после выражения echo. Любую синтаксическую ошибку можно увидеть только в браузере, если включен display_errors.

php.net на display_errors: http://www.php.net/manual/en/errorfunc.configuration.php#ini.display-errors

1 голос
/ 27 июля 2011

Если вы находитесь в буфере вывода, который вы можете проверить с помощью ob_get_level()>0, вы можете сбросить содержимое с помощью ob_flush().Если вы хотите разбить все выходные буферы, это быстрый способ завершить их все:

while(ob_get_level()>0) ob_end_flush();

Возможно, используйте ob_end_clean() вместо ob_end_flush(), если вы хотите сбросить буфер (ы).

0 голосов
/ 27 июля 2011
<?php
echo "Hello Web!";
?>

В этом простом скрипте вы можете увидеть некоторые из наиболее часто используемых компонентов скрипта PHP.Во-первых, теги PHP используются для отделения реального содержимого PHP от остальной части файла.Вы можете сообщить переводчику, что хотите, чтобы он выполнял ваши команды, добавив пару из них: стандартные теги "";короткие метки "";ASP-теги "<%%>";Теги скрипта "".Стандартные теги и теги сценария гарантированно будут работать при любой конфигурации, остальные два должны быть включены в вашем php.ini

...