Jump to content
СофтФорум - всё о компьютерах и не только

время работы выражения в php


Recommended Posts

Привет всем :)

Вопрос такой, предположим у меня есть цикл for, в теле которого выполняются какие-то операции, как мне сделать такую вещь, что если например, на 4 шаге тело выполняется больше 5 секунд, то переходим к следующей итерации, т.е:

for ($i=0; $i<100; $i++) {  //  ....bla bla bla ..... if (время выполнения скрипта > 10c) continue;}

set_time_limit (n секунд); останавливает сам сценарий, а мне не нужно сразу выходить из него;

:)

Подскажите как решить задачу)

Link to comment
Share on other sites

Пишу что называется на горячую руку поэтому за работоспособность не ручаюсь.

for ($i=0; $i<100; $i++) {//Считываем текущее время $mtime = microtime(); //Разделяем секунды и миллисекунды $mtime = explode(" ",$mtime); //Составляем одно число из секунд и миллисекунд $mtime = $mtime[1] + $mtime[0]; //Записываем стартовое время в переменную $tstart = $mtime;$totaltime = 0;while ($totaltime < 5) { //  ....bla bla bla .....//Делаем все то же самое, чтобы получить текущее время $mtime = microtime(); $mtime = explode(" ",$mtime); $mtime = $mtime[1] + $mtime[0]; //Записываем время окончания в другую переменную $tend = $mtime; //Вычисляем разницу $totaltime = ($tend - $tstart);}}

В переменной $totaltime хранится время выполнения кода.

Проверить сейчас не имею возможности, поэтому за работоспособность не ручаюсь. Часть кода взята отсюда

Link to comment
Share on other sites

while ($totaltime < 5)

Сори, тока в ванную когда пошёл сообразил))

Нужен не цикл while а условие if, иначе зациклится цикл на бесконечности

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...