powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) ob_start()
10 сообщений из 10, страница 1 из 1
(PHP) ob_start()
    #33018087
Фотография viv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем нужна эта функция?
Просто я пишу крон и увидел ее в примере одном.
Посмотрел значение этой функции в справочнике но так и не понял зачем она нужна.
Можно пояснить для тех кто в танке.
...
Рейтинг: 0 / 0
(PHP) ob_start()
    #33018274
SDN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SDN
Гость
[quote viv]Зачем нужна эта функция?
Просто я пишу крон и увидел ее в примере одном.
Посмотрел значение этой функции в справочнике но так и не понял зачем она нужна.
Можно пояснить для тех кто в танке.[quote]

Та чё, вроде всё ясно... )

[quote Manual]
ob_start
(PHP 4)

ob_start - включает буферизацию вывода.

Описание
void ob_start ([string output_callback])

Эта функция включает буферизацию вывода. Если буферизация вывода активна, никакой вывод скрипта не высылается (кроме шапок/headers); вывод сохраняется во внутреннем буфере.

Содержимое этого внутреннего буфера может быть скопировано в строковую переменную с использованием ob_get_contents(). Для вывода содержимого этого внутреннего буфера используйте ob_end_flush(). Альтернативно ob_end_clean() втихую отбрасывает содержимое буфера.[/quote]

Просто весь вывод идёт не клиенту, а в буфер... Т.е., например, ещё можно отсылать header'ы после вывода, но до ob_end_flush()

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
(PHP) ob_start()
    #33018349
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
SDNТ.е., например, ещё можно отсылать header'ы после вывода, но до ob_end_flush()Дурацкий пример. Абсолютно.
...
Рейтинг: 0 / 0
(PHP) ob_start()
    #33018409
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я тоже, когда первый раз увидел такой пример - сказал про себя "дурацкий пример". НО в php.ini написано
php.ini; Output buffering allows you to send header lines (including cookies) even
; after you send body content, at the price of slowing PHP's output layer a
; bit. You can enable output buffering during runtime by calling the output
; buffering functions. You can also enable output buffering for all files by
; setting this directive to On. If you wish to limit the size of the buffer
; to a certain size - you can use a maximum number of bytes instead of 'On', as
; a value for this directive (e.g., output_buffering=4096).
output_buffering = Off
По идее, если ты спрашиваешь, что эта функция делает, то она тебе не так уже и нужна.
Но все таки инетересно, для чего делают буфферизацию вывода?
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
(PHP) ob_start()
    #33018411
SDN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SDN
Гость
[quote *]Дурацкий пример. Абсолютно.[/qoute]

Почему?.. И попрошу выражения выбирать!!
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
(PHP) ob_start()
    #33018438
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
SDN[quote *]Дурацкий пример. Абсолютно.[/qoute]Почему?..Потому что в большинстве случаев достаточно изменить логику приложения. При чём сделать это несложно. И даже логично и полезно. А ваш пример по идее способствует развитию безграмотности и непонимания основ протокола HTTP, и массу вопросов типа headers already sent. Вобщем, вредный пример.И попрошу выражения выбирать!!А что я такого сказал? Назвал чёрное чёрным? Или вы "дурацкий пример" проецируете на себя лично? Дурацкие примеры могут давать и вполне разумные люди.
...
Рейтинг: 0 / 0
(PHP) ob_start()
    #33018589
Фотография viv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тоесть в кроне ее использовали для того чтоб не каких заголовков не посылать при завершении. ТОесть выполнить буфер как программу и закрыть???
Я правильно понял?
...
Рейтинг: 0 / 0
(PHP) ob_start()
    #33018898
SDN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SDN
Гость
Да ладна, эт я так сгоряча ))) На работе много работы )

Я просто привёл такой пример, объясняя принцип работы ob_start(). Я тоже никогда не сталкивался в необходимостью использования этой функции, потому что, как было правильно замечено, "в большинстве случаев достаточно изменить логику приложения" ) Но вот недавно такая необходимость получилась... Чуть позже расскажу, что к чему, а то ща времени в обрез 8/
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
(PHP) ob_start()
    #33019175
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
vivТоесть в кроне ее использовали для того чтоб не каких заголовков не посылать при завершении. ТОесть выполнить буфер как программу и закрыть???
Я правильно понял?Неправильно. Зачем оно было использовано, даже не видя программу, вам никто не скажет. Вообще Output buffering может быть полезен, к примеру, при решении задач кэширования данных. SDNНо вот недавно такая необходимость получилась...Вот и привели бы реальный пример. Пользы было бы гораздо больше. Возможно, и для вас - если бы в итоге выяснилось, что задача имеет другое решение, без всяких output buffering'ов.
...
Рейтинг: 0 / 0
(PHP) ob_start()
    #33030998
Фотография Duke1999
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну например при обработке шаблона

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
ob_start();
include_once("module.php");
$module_output = ob_get_contents();
ob_end_clean();

затем в нужном месте
$Source = str_replace ("[module.module_name]", $module_output, $Source);
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) ob_start()
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]