За последние 24 часа нас посетил 15801 программист и 1541 робот. Сейчас ищут 738 программистов ...

Как увеличит время работы функции

Тема в разделе "PHP для новичков", создана пользователем sound, 21 окт 2007.

  1. sound

    sound Guest

    есть функция exec('Z:/home/localhost/www/system/script.js');

    при выполнении иногда выдает такую ошибку
    Fatal error: Maximum execution time of 30 seconds exceeded

    можно ли как то сделать так чтобы php ждал ее завершения

    думаю в настройках пхп можно и подправить чтобы он ждал не 30 секунд а больше но помоему это плохое решение
     
  2. Elkaz

    Elkaz Старожил
    Команда форума Модератор

    С нами с:
    26 июн 2006
    Сообщения:
    3.373
    Симпатии:
    0
    Адрес:
    Баку, Азербайджан
    php.ini
     
  3. sound

    sound Guest

    Elkaz
    то есть кроме php.ini нет вариантов?
     
  4. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    exec'ом запускать исполнение клиентского javascript на сервере...
    интересно
     
  5. sound

    sound Guest

    DarkElf
    а чем еще можно ?

    а вообще давайте по теме может или нет сценарий дождаться завершения функции, если превышено время установленное в php.ini
     
  6. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Я делал так: через 29 секунд скрпт вызывал другой скрипт, который опять вызывал первый скрпт.
     
  7. sound

    sound Guest

    [vs]
    то есть время увеличивалось до 59 секунд и все?
     
  8. Mavir

    Mavir Guest

  9. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Нет, оно ведь каждые 29 секунд повторялось заново. Т.е. скрипт выполнялся бесконечно, перезапускаясь каждые 29 секунд.
     
  10. sound

    sound Guest

    [vs]
    а код не скинешь суда что то я понять не могу как это ты сделал?
     
  11. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Забыл про тему, потерял код уже :)
    Первый файл значит работал в цикле, примерно так:
    Первый файл script.php
    PHP:
    1.  
    2. <?php
    3. $time=time();
    4. while($time>(time()-30)
    5. {
    6. ....
    7. }
    8. $host = "localhost";
    9. $sendheaders = 'POST [url=http://localhost/reexe.php]http://localhost/reexe.php[/url] HTTP/1.0
    10. Host: localhost
    11.  
    12. ';
    13. $fp = fsockopen($host, 80);
    14. fputs($fp, $sendheaders);
    15. fclose($fp);
    16. ?>
    17.  
    Второй reexe.php:
    PHP:
    1.  
    2. <?php
    3. $host = "localhost";
    4. $sendheaders = 'POST [url=http://localhost/script.php]http://localhost/script.php[/url] HTTP/1.0
    5. Host: localhost
    6.  
    7. ';
    8. $fp = fsockopen($host, 80);
    9. fputs($fp, $sendheaders);
    10. fclose($fp);
    11.