2011-01-06 2 views
8

Каковы методы включения буферизации вывода либо в PHP-скрипте, либо в файле и htaccess?PHP Буферизация вывода

Я использую следующий метод в файл Htaccess в корне моего приложения:

php_value output_buffering On 
php_value output_handler mb_output_handler 

На одном из моих общих учетных записей хостинга (Linux хостинг с PHP 5.2.x), выше дает пустую страницу , Техническая поддержка говорит, что они не могут включить его в файле php.ini, но я могу включить его в своем сценарии ...

ob_start() и ob_end_flush() также дает тот же результат. Что я могу сделать?

+1

Если вы получаете пустые страницы, загляните в 'error.log'. Вы установили [выходную кодировку] (http://php.net/manual/en/function.mb-output-handler.php), прежде чем активировать mb_output_handler? – mario

+0

Опубликуйте фактический код. – profitphp

+0

@mario, нет, я не знал, что должен был. Как я могу это сделать? –

ответ

6

Использование ob_start() и ob_end_flush().

ob_start() в начале скрипта перед любым выходом (даже не пустым пространством).

Когда вы хотите использовать функцию ob_end_flush().

+2

2-й раз ive видел это сегодня. Вы можете включить буферизацию вывода ПОСЛЕ или ПРЕЖДЕ, чтобы печатать содержимое. Это не имеет значения. Http://ideone.com/ URuKl – profitphp

+0

Уверен, что это имеет значение. Если вы напечатаете что-то без включения буферизации вывода, оно будет действительно выводиться. –

+0

@klinky Я не пытался продемонстрировать ob, я демонстрировал, что вы можете назвать его в любой момент, а не только на начало перед любым выходом, как заявлял predrag.music. – profitphp

2

Проверьте файл PHP.ini и убедитесь, что выходной буфер включен.

После этого вы можете использовать ob_start(), когда хотите начать буферизацию, и ob_flush(), чтобы сбросить буфер, когда вы хотите остановить буферизацию.

+0

извините, общий хостинг - нет доступа к файлу php.ini ....! –

+1

Если вы используете cP anel (большинство хостов), есть опция, чтобы изменить конфигурации php.ini. – user509006

+1

FYI Scott, я использую hostmonster.com, который является общедоступным хостингом, и я все еще могу редактировать свой собственный файл php.ini. – justinl

Смежные вопросы