RFpro.ru: Программирование на PHP

  Все выпуски  

RusFAQ.ru: Программирование на PHP


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / PHP

Выпуск № 403
от 19.07.2006, 03:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 317, Экспертов: 46
В номере:Вопросов: 1, Ответов: 5


Вопрос № 49002: Здраствуйте, ув.эксперты. Такой вопрос. Если я пишу на Си дома такую конструкцию: for (;;) {i++;i--}, то программа зациклится и я не дождусь ее окончания. Я понимаю, что практического применения в таком нету, но интересно, как поведет себя интерпрета...

Вопрос № 49.002
Здраствуйте, ув.эксперты. Такой вопрос. Если я пишу на Си дома такую конструкцию: for (;;) {i++;i--}, то программа зациклится и я не дождусь ее окончания. Я понимаю, что практического применения в таком нету, но интересно, как поведет себя интерпретатор PHP.
Отправлен: 13.07.2006, 12:01
Вопрос задал: Гузенко Руслан Николаевич (статус: Посетитель)
Всего ответов: 5
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Alexey Vilchinsky
Здравствуйте, Гузенко Руслан Николаевич!
если на в php.ini прописано время выполнения скрипта, то через это время скрипт выгрузится.
---------
Делая людям добро, мы возвращаем его многократно...
Ответ отправил: Alexey Vilchinsky (статус: 10-ый класс)
Ответ отправлен: 13.07.2006, 12:05

Отвечает: PVS
Здравствуйте, Гузенко Руслан Николаевич!
По умолчанию существует ограничение на врема выполнения скрипта. Если Вы не предприняли действий по его отключению, то такой скрипт прекратит выполнение ссответственно ограничению. Если же Вы его отключили ограничение времени выполнения, то получите бесконечный цикл.
Ответ отправил: PVS (статус: 9-ый класс)
Ответ отправлен: 13.07.2006, 12:09

Отвечает: Makar-off V.M.
Здравствуйте, Гузенко Руслан Николаевич!
сначала данная конструкция зациклится а после интерпретатор её выгрузит, да и ещё если вам надо зациклить то пишите просто for (;;)
Ответ отправил: Makar-off V.M. (статус: 5-ый класс)
Ответ отправлен: 13.07.2006, 12:26

Отвечает: Physicist
Здравствуйте, Гузенко Руслан Николаевич!

Интерпретатор поведет себя точно также. Просто через время, указанное в параметре max_execution_time (в секундах) выполнение скрипта автоматически прекратится.
Ответ отправил: Physicist (статус: 4-ый класс)
Ответ отправлен: 13.07.2006, 13:38

Отвечает: Rodion
Здравствуйте, Гузенко Руслан Николаевич!

Эксперемент показал, совсем неожиданные для меня результаты, оказывается, интерпретатор PHP использует по умолчанию прекэширование документов, поэтому, вывода данных не будет в браузер до тех пор, пока не отработают все скрипты.
Пример, который я для этого эксперемента написал, по моим соображениям должен был вывести некоторые данные и зависнуть до тех пор, пока интерпретатор не прервет работу бесконечного цикла по допустимому максимальному времени выполнения. Однако, в браузере данные появляются после того как программа закончится по времени. У меня на локальном сервере это 10 секунд. Все это время браузер Опера показыввает часы, типа ждите. Пример прилагаю.

Приложение:

Ответ отправил: Rodion (статус: 1-ый класс)
Ответ отправлен: 13.07.2006, 18:22


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.34 от 01.06.2006
Яндекс Rambler's Top100

В избранное