Լուծեք այն սխալը, որը հուշում է php-ի կատարման առավելագույն ժամանակը գերազանցել է 30 վայրկյանը

շատ网络 营销նորեկի ուսուցումWordPress կայքը, PHP էջը երկար ժամանակ դատարկ է։

Այնուհետև հայտնվում է հետևյալ սխալի հաղորդագրությունը.

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

Պարզապես, դա նշանակում է, որ PHP-ի կատարման ժամանակը գերազանցում է 30 վայրկյանի սահմանը:

Չեն ՎայլյանԱյս սխալը նույնպես նախկինում հանդիպել է, և այս հոդվածը ամփոփում է սխալների հետ աշխատելու մեթոդը:

Ինչպե՞ս ուղղել սխալը:

Հիմնականում այս սխալը կարգավորելու 3 եղանակ կա.

  1. Փոփոխեք php կազմաձևման ֆայլը php.ini ֆայլը
  2. Օգտագործելով ini_set() ֆունկցիան
  3. Օգտագործելով set_time_limit() ֆունկցիան

1) Փոփոխեք php կազմաձևման ֆայլը php.ini ֆայլը

Գտեք php.ini ֆայլը և գտեք այն այս ֆայլում.

max_execution_time = 30 ;

Այս տողում սահմանեք 30 թիվը ցանկալի արժեքին (վայրկյաններով):

Այն կարող է նաև ուղղակիորեն փոփոխվել հետևյալ կերպ.

max_execution_time = 0; //无限制

Նկատի ունեցեք, որ փոփոխությունից հետո անհրաժեշտ է վերաբեռնումLinuxսերվեր.

2) Օգտագործեք ini_set() ֆունկցիան

Նրանց համար, ովքեր չեն կարող փոփոխել php.ini-ննոր լրատվամիջոցներՄարդիկ կարող են օգտագործել ini_set() ֆունկցիան՝ առավելագույն կատարման ժամկետը փոխելու համար:

Ծրագրի վերևում ավելացրեք հետևյալ կոդը.

ini_set('max_execution_time','100');
  • Վերոնշյալ պարամետրը 100 վայրկյան է, կարող եք նաև սահմանել 0, ինչը նշանակում է չսահմանափակվել կատարման ժամանակով:

3) Օգտագործեք set_time_limit() ֆունկցիան

Ծրագրի վերևում ավելացրեք.

set_time_limit(100);
  • Սա նշանակում է, որ կատարման առավելագույն ժամանակը սահմանված է 100 վայրկյան:
  • Իհարկե, պարամետրը կարող է սահմանվել նաև 0, ինչը նշանակում էանսահմանափակ∞。

Set_time_limit ֆունկցիայի նկարագրությունը.

void set_time_limit ( int $seconds )

Այն, ինչ անում է այս գործառույթը, սահմանում է այն ժամանակը (վայրկյաններով), որով թույլատրվում է գործարկել սցենարը:

  • Եթե ​​այս պարամետրը գերազանցվի, սցենարը կվերադարձնի ճակատագրական սխալ:
  • Լռելյայնը 30 վայրկյան է, եթե այս արժեքը գոյություն ունի, դա այն արժեքն է, որը սահմանված է max_execution_time-ում php.ini-ում:
  • Երբ այս ֆունկցիան կանչվի, set_time_limit()-ը կվերագործարկի ժամանակի հաշվիչը զրոյից:

Այլ կերպ ասած, եթե ժամանակի վերջնաժամկետը լռելյայն է 30 վայրկյան, և երբ սցենարը աշխատում է 25 վայրկյան, զանգահարեքset_time_limit(20), սկրիպտը կարող է աշխատել ընդհանուր առմամբ 45 վայրկյան, մինչև ժամկետի ավարտը:

Սա չի աշխատում, երբ php-ն աշխատում է անվտանգ ռեժիմով:

Անվտանգ ռեժիմը կարող է անջատվել.

  • php.iniԱնջատեք safe_mode-ը:
  • կամ փոխելphp.iniժամանակի սահմանափակումը:

սահմանել_ժամանակ_սահմանափակել օրինակ

Եթե ​​Safe Mode-ը միացված չէ, տեղադրիչը կաշխատի 25 վայրկյան:

Օրինակ ՝

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

Հույս Chen Weiliang բլոգ ( https://www.chenweiliang.com/ ) կիսվել է «PHP հուշում 30 վայրկյան գերազանցված առավելագույն կատարման ժամանակի սխալի լուծում», որն օգտակար է ձեզ համար:

Բարի գալուստ՝ կիսելու այս հոդվածի հղումը.https://www.chenweiliang.com/cwl-1481.html

Բարի գալուստ Chen Weiliang-ի բլոգի Telegram ալիք՝ վերջին թարմացումները ստանալու համար:

🔔 Եղեք առաջինը, ով կստանա արժեքավոր «ChatGPT բովանդակության շուկայավարման AI գործիքի օգտագործման ուղեցույցը» ալիքի վերին գրացուցակում: 🌟
📚 Այս ուղեցույցը պարունակում է հսկայական արժեք, 🌟Սա հազվագյուտ հնարավորություն է, բաց մի՛ թողեք այն։ ⏰⌛💨
Տարածեք և հավանեք, եթե հավանեցիք:
Ձեր տարածումը և հավանումները մեր շարունակական շարժառիթն են:

 

发表 评论

Ձեր էլ. Փոստի հասցեն չի հրապարակվի: Օգտագործվում են պահանջվող դաշտերը * Պիտակ

ոլորել դեպի վերև