1. Home
  2. Tekninen
  3. PHP aikaraja (max_execution_time, set_time_limit())

PHP aikaraja (max_execution_time, set_time_limit())

PHP:n oletussuoritusaika (max_execution_time) on 30 sekuntia. Tämä on PHP-skriptin aikaraja, kuinka monta sekuntia komentosarja voi käyttää 100 % suorittimen ajasta.

PHP-komentosarjan aikarajaa voidaan pidentää funktiolla set_time_limit() tai muokkaamalla PHP-määritystiedostoa php.ini tai .user.ini.

Funktion set_time_limit() käyttäminen PHP-skriptissä

Lisää set_time_limit() -funktio vaaditun PHP-tiedoston alkuun tai ennen ongelman aiheuttavaa koodia vaaditulla sekuntimäärällä:

set_time_limit(60);

Yleisen php.ini- tai hakemistokohtaisen .user.ini-tiedoston käyttäminen

max_execution_time = 60

Globaalin php.ini-tiedoston käyttö aikarajan pidentämiseen vaikuttaa kaikkiin pää- ja aliverkkotunnusten virtuaalisiin isänteihin.
Paikallinen .user.ini-tiedosto vaikuttaa samassa hakemistossa ja sen alihakemistoissa sijaitseviin komentosarjoihin.

HUOM!

Kun aikarajaa pidennetään .ini-tiedostolla, on oltava varovainen, jotta vältetään negatiiviset vaikutukset, jos jokin muu sovelluksen osa on hidas tai toimii yli 30 sekuntia, koska tämä voi johtaa PHP:n prosessirajojen ylittymiseen suuremmalla kävijämäärällä.

Jos PHP-skripti vie enemmän suoritinaikaa kuin sallittu raja, samanlainen virheilmoitus luodaan:

PHP Fatal error:  Maximum execution time of 30 seconds exceeded in /data01/virt1234/domeenid/www.example.com/htdocs/index.php on line 5
PHP dokumentaatio

PHP-aikaraja vaikuttaa vain itse PHP-skriptin käsittelyaikaan. Tämän ulkopuolella käytettyä aikaa (kuten tietokantakyselyitä tai järjestelmä/palvelinpyyntöjä) ei lasketa mukaan tähän rajaan.
Tämä sisältää myöse sleep() -funktion, jossa kuluvaa aikaa ei lasketa aikarajaan.

Katso lisätietoja PHP-dokumentaatiosta:
set_time_limit
max_execution_time

Ohjeartikkeli PHP-määritystiedoston muokkaamisesta

php.ini-tiedoston muokkaaminen (max_execution_time, memory_limit)

Updated on 7. Nov 2024
Was this article helpful?

Related Articles