გადაჭრით შეცდომის 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დროის ლიმიტი ში.

დროის_ლიმიტის დაყენება მაგალითი

თუ უსაფრთხო რეჟიმი არ არის ჩართული, ინსტალერი იმუშავებს 25 წამის განმავლობაში.

Მაგალითად:

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

იმედი ჩენ ვეილიანგის ბლოგი ( https://www.chenweiliang.com/ ) გააზიარა "PHP-ში შესრულების მაქსიმალური დროის 30 წამის გადაჭარბებული შეცდომის გადაჭრა", რაც თქვენთვის სასარგებლოა.

კეთილი იყოს თქვენი მობრძანება ამ სტატიის ბმულის გასაზიარებლად:https://www.chenweiliang.com/cwl-1481.html

კეთილი იყოს თქვენი მობრძანება Chen Weiliang-ის ბლოგის ტელეგრამის არხზე, რომ მიიღოთ უახლესი განახლებები!

🔔 იყავით პირველი, ვინც მიიღეთ ღირებული "ChatGPT Content Marketing AI Tool Usage Guide" არხის ზედა დირექტორიაში! 🌟
📚 ეს სახელმძღვანელო შეიცავს უზარმაზარ ღირებულებას, 🌟ეს იშვიათი შესაძლებლობაა, არ გამოტოვოთ! ⏰⌛💨
გააზიარეთ და მოიწონეთ თუ მოგეწონათ!
თქვენი გაზიარება და მოწონებები ჩვენი უწყვეტი მოტივაციაა!

 

评论

თქვენი ელ.ფოსტის მისამართი არ გამოქვეყნდება. გამოყენებულია აუცილებელი ველები * ლეიბლი

გადახვევა ზევით