Ratkaise php:n ilmoittama virhe. Maksimi suoritusaika 30 sekuntia ylitetty

paljon网络 营销aloittelijan oppiminenWordPress-sivusto, PHP-sivu on tyhjä pitkään.

Sitten seuraava virheilmoitus tulee näkyviin:

Fatal error: Maximum execution time of 30 seconds exceeded in ......

Yksinkertaisesti se tarkoittaa, että PHP:n suoritusaika ylittää 30 sekunnin rajan.

Chen WeiliangTämä virhe on havaittu aiemminkin, ja tässä artikkelissa on yhteenveto virheenkäsittelymenetelmästä.

Kuinka korjata virhe?

Periaatteessa on kolme tapaa käsitellä tätä virhettä:

  1. Muokkaa php-määritystiedostoa php.ini-tiedostoa
  2. Käytä ini_set()-funktiota
  3. Käytä set_time_limit()-funktiota

1) Muokkaa php-asetustiedostoa php.ini-tiedosto

Etsi php.ini-tiedosto ja löydä se tästä tiedostosta:

max_execution_time = 30 ;

Aseta tällä rivillä numero 30 haluttuun arvoon (sekunneissa).

Se voidaan myös muokata suoraan seuraavasti:

max_execution_time = 0; //无限制

Huomaa, että uudelleenkäynnistys vaaditaan muokkauksen jälkeenLinuxpalvelin.

2) Käytä ini_set()-funktiota

Niille, jotka eivät voi muokata php.ini-tiedostoauusi mediaIhmiset voivat käyttää ini_set()-funktiota muuttaakseen suoritusajan enimmäisaikaa.

Lisää seuraava koodi ohjelman yläosaan:

ini_set('max_execution_time','100');
  • Yllä oleva asetus on 100 sekuntia, voit myös asettaa sen arvoon 0, mikä tarkoittaa, että se ei rajoitu suoritusaikaan.

3) Käytä set_time_limit()-funktiota

Lisää ohjelman yläosaan:

set_time_limit(100);
  • Tämä tarkoittaa, että enimmäissuoritusaika on asetettu 100 sekuntiin.
  • Tietenkin parametri voidaan asettaa myös arvoon 0, mikä tarkoittaarajoittamaton∞。

Kuvaus set_time_limit-funktiosta:

void set_time_limit ( int $seconds )

Tämä toiminto määrittää ajan (sekunteina), jonka skriptin sallitaan suorittaa.

  • Jos tämä asetus ylittyy, komentosarja palauttaa vakavan virheen.
  • Oletusarvo on 30 sekuntia, jos tämä arvo on olemassa, se on php.ini:n kohdassa max_execution_time määritetty arvo.
  • Kun tätä funktiota kutsutaan, set_time_limit() käynnistää aikakatkaisulaskurin uudelleen nollasta.

Toisin sanoen, jos aikakatkaisun oletusarvo on 30 sekuntia ja kun komentosarja on käynnissä 25 sekuntia, soitaset_time_limit(20), komentosarja voi toimia yhteensä 45 sekuntia ennen aikakatkaisua.

Tämä ei toimi, kun php on käynnissä vikasietotilassa.

Vikasietotila voidaan kytkeä pois päältä:

  • php.iniAseta safe_mode pois päältä kohdassa .
  • tai muuttaaphp.iniaikaraja sisään.

set_time_limit Ilmentymä

Jos vikasietotilaa ei ole kytketty päälle, asennusohjelma toimii 25 sekunnin ajan.

Esimerkiksi:

<?php
if(!ini_get('safe_mode')){
set_time_limit(25);
}

Hope Chen Weiliang -blogi ( https://www.chenweiliang.com/ ) jakoi PHP:n 30 sekunnin enimmäissuoritusajan ylittymisen virheen ratkaisemisen, josta on sinulle hyötyä.

Tervetuloa jakamaan tämän artikkelin linkki:https://www.chenweiliang.com/cwl-1481.html

Tervetuloa Chen Weiliangin blogin Telegram-kanavalle saadaksesi viimeisimmät päivitykset!

🔔 Saat ensimmäisenä arvokkaan "ChatGPT Content Marketing AI Toolin käyttöoppaan" kanavan ylähakemistoon! 🌟
📚 Tämä opas sisältää valtavasti arvoa, 🌟Tämä on harvinainen tilaisuus, älä missaa sitä! ⏰⌛💨
Jaa ja tykkää jos tykkäät!
Jakamasi ja tykkäyksesi ovat jatkuva motivaatiomme!

 

发表 评论

Sähköpostiosoitettasi ei julkaista. 必填 项 已 用 * 标注

Vieritä ylös