Lös felet som php uppmanar Maximal exekveringstid på 30 sekunder har överskridits

massor网络 营销nybörjare lärandeWordPress webbplats, PHP-sidan är tom under lång tid.

Då visas följande felmeddelande:

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

Helt enkelt betyder det att PHP-exekveringstiden överskrider gränsen på 30 sekunder.

Chen WeiliangDet här felet har också påträffats tidigare, och den här artikeln sammanfattar felhanteringsmetoden.

Hur åtgärdar man felet?

I grund och botten finns det tre sätt att hantera detta fel:

  1. Ändra php-konfigurationsfilen php.ini-fil
  2. Använda ini_set()-funktionen
  3. Använder funktionen set_time_limit().

1) Ändra php-konfigurationsfilen php.ini-fil

Hitta filen php.ini och hitta den i den här filen:

max_execution_time = 30 ;

På den här raden ställer du in siffran 30 till önskat värde (i sekunder).

Det kan också ändras direkt till:

max_execution_time = 0; //无限制

Observera att en omstart krävs efter modifieringLinuxserver.

2) Använd ini_set()-funktionen

För dig som inte kan ändra php.ininy mediaMänniskor kan använda funktionen ini_set() för att ändra den maximala exekveringstiden.

Lägg till följande kod överst i programmet:

ini_set('max_execution_time','100');
  • Ovanstående inställning är 100 sekunder, du kan också ställa in den på 0, vilket betyder inte begränsat till körningstid.

3) Använd funktionen set_time_limit()

Överst i programmet lägg till:

set_time_limit(100);
  • Detta innebär att den maximala exekveringstiden är inställd på 100 sekunder.
  • Naturligtvis kan parametern också sättas till 0, vilket betyderobegränsat∞.

set_time_limit funktionsbeskrivning:

void set_time_limit ( int $seconds )

Vad den här funktionen gör är att ställa in tiden (i sekunder) som skriptet får köras.

  • Om denna inställning överskrids kommer skriptet att returnera ett allvarligt fel.
  • Standard är 30 sekunder, om detta värde finns är det värdet definierat i max_execution_time i php.ini.
  • När denna funktion anropas kommer set_time_limit() att starta om timeouträknaren från noll.

Med andra ord, om timeouten är standard på 30 sekunder och när skriptet körs i 25 sekunder, ringset_time_limit(20), kan skriptet köras i totalt 45 sekunder innan det tar slut.

Detta fungerar inte när php körs i felsäkert läge.

Säkert läge kan stängas av:

  • iphp.iniStäll in safe_mode till av i .
  • eller ändraphp.initidsgräns i.

set_time_limit exempel

Om felsäkert läge inte är aktiverat körs installationsprogrammet i 25 sekunder.

T.ex:

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

发表 评论

Din e-postadress kommer inte att publiceras. 必填 项 已 用 * 标注

Bläddra till början