Artikulo Direktoryo
Daghang mga bag-o sa online marketing ang makasugat og taas nga panahon sa blangko nga mga panid sa PHP sa dihang nagkat-on sa paghimo og mga website gamit ang WordPress .
Unya ang mosunod nga mensahe sa sayop makita:
Fatal error: Maximum execution time of 30 seconds exceeded in ......Sa yano, kini nagpasabut nga ang oras sa pagpatuman sa PHP milapas sa 30 segundos nga limitasyon.
Nasinati na ni Chen Weiliang kini nga sayop kaniadto, ug kini nga artikulo nagsumaryo kon unsaon kini pag-atubang.
Unsaon pag-ayo ang sayop?
Sa panguna, adunay 3 nga mga paagi aron masulbad kini nga sayup:
- Usba ang php configuration file php.ini file
- Gamit ang ini_set() function
- Gamita ang set_time_limit() function
1) Usba ang php configuration file php.ini file
Pangitaa ang php.ini file ug pangitaa kini sa kini nga file:
max_execution_time = 30 ;
Niini nga linya, ibutang ang numero 30 sa gusto nga kantidad (sa mga segundo).
Mahimo usab kini direkta nga usbon sa:
max_execution_time = 0; //无限制
Palihug timan-i nga kinahanglan nimong i-restart ang Linux server pagkahuman sa paghimo sa mga pagbag-o.
2) Gamita ang ini_set() function
Para sa mga propesyonal sa bag-ong media nga dili makausab sa php.ini , ang ini_set() function magamit aron usbon ang pinakataas nga limitasyon sa oras sa pagpatuman.
Idugang ang mosunod nga code sa ibabaw sa programa:
ini_set('max_execution_time','100');- Ang setting sa ibabaw mao ang 100 segundos, mahimo usab nimo kini ibutang sa 0, nga nagpasabut nga dili limitado sa oras sa pagpatuman.
3) Gamita ang set_time_limit() function
Sa ibabaw sa programa idugang:
set_time_limit(100);
- Kini nagpasabot nga ang pinakataas nga oras sa pagpatuman gitakda sa 100 segundos.
- Siyempre, ang parameter mahimo usab nga itakda sa 0, nga nagpasabutwalay kinutuban∞.
set_time_limit function nga paghulagway:
void set_time_limit ( int $seconds )
Ang gibuhat sa kini nga function mao ang pagtakda sa oras (sa mga segundo) nga gitugotan nga modagan ang script.
- Kung nalapas kini nga setting, ang script magbalik usa ka makamatay nga sayup.
- Ang default mao ang 30 segundos, kung kini nga kantidad naglungtad, kini ang kantidad nga gipasabut sa max_execution_time sa php.ini.
- Kung gitawag kini nga function, ang set_time_limit() magsugod pag-usab sa timeout counter gikan sa zero.
Sa laing pagkasulti, kung ang timeout mobalhin sa 30 segundos, ug kung ang script modagan sa 25 segundos, tawaganset_time_limit(20), ang script mahimong modagan sa kinatibuk-an nga 45 segundos sa dili pa mohunong.
Dili kini molihok kung ang php nagdagan sa luwas nga mode.
Ang Safe Mode mahimong i-off:
- 在
php.iniIbutang ang safe_mode sa off sa . - o pagbag-o
php.inilimitasyon sa panahon sa.
set_time_limit pananglitan
Kung ang Safe Mode dili ma-on, ang installer modagan sulod sa 25 segundos.
E.g:
<?php
if(!ini_get('safe_mode')){
set_time_limit(25);
}Hinaut nga ang artikulong "Solving the PHP error 'Maximum execution time of 30 seconds exceeded'" nga gipaambit sa blog ni Chen Weiliang ( https://www.chenweiliang.com/ ) makatabang kanimo.
Ayaw pagpanuko sa pagpaambit niini nga link sa artikulo: https://www.chenweiliang.com/cwl-1481.html
