Max_execution_time tối đa trong PHP là bao nhiêu?

Trong quá trình thực thi tập lệnh PHP, chúng tôi có thể gặp phải lỗi nghiêm trọng do vượt quá thời gian tối đa. Thời gian thực hiện tối đa mặc định của tập lệnh PHP là 30 giây. Vì vậy, nếu quá trình chạy tập lệnh vượt quá 30 giây thì hệ thống sẽ báo lỗi. Có thể có trường hợp thời gian chạy tập lệnh mất hơn 30 giây. Trong những tình huống đó, chúng tôi phải tăng thời gian thực hiện. Điều này có thể được thực hiện bằng hàm ini_set[]

ini_set[]. Hàm ini_set[] được sử dụng để sửa đổi cài đặt trong php. tập tin ini. Nó chấp nhận hai tham số, một là tên của cài đặt sẽ được sửa đổi và tham số còn lại là giá trị được gán. Để tăng thời gian thực hiện, chúng tôi sử dụng một chuỗi có tên là “max_execution_time“, đây là một tên cài đặt trong php. tập tin ini.  

cú pháp

ini_set['setting_name', value];

Thông số

  • setting_name. Nó chỉ định tên của cài đặt chúng ta cần sửa đổi
  • giá trị. Gán giá trị cho cài đặt

Ghi chú. Hàm ini_set[] này phải được chỉ định trong dòng đầu tiên của tập lệnh

Chúng ta hãy xem xét một vài ví dụ sử dụng hàm ini_set[] để tăng thời gian thực hiện

ví dụ 1. Đoạn mã dưới đây thậm chí không mất một giây để thực thi nhưng chúng tôi đã tăng giới hạn thời gian thực thi tối đa lên 60 giây

PHP




GFG Learning portal
4

GFG Learning portal
5
GFG Learning portal
6
GFG Learning portal
7
GFG Learning portal
8
GFG Learning portal
9

GFG Learning portal
0

GFG Learning portal
5
GFG Learning portal
1

GFG Learning portal
5
GFG Learning portal
3
GFG Learning portal
4

GFG Learning portal
5

đầu ra

GFG Learning portal

ví dụ 2. Chúng ta cũng có thể đặt thời gian thực hiện tối đa thành không giới hạn bằng cách cung cấp giá trị 0 cho hàm ini_set[]. Nhưng nó không phải là một cách tiếp cận lý tưởng để làm theo. Chúng ta hãy xem mã về cách đặt thời gian thực hiện tối đa thành “không giới hạn”

Chỉ thị max_execution_time xác định thời gian thực thi tối đa cho các tập lệnh và ứng dụng PHP của bạn. Nếu không được định cấu hình, thời gian thực thi tối đa mặc định cho tập lệnh PHP là 30 giây. PHP sẽ hết thời gian chờ và thoát với lỗi nghiêm trọng khi đạt đến giới hạn thời gian

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

Bạn có thể đặt giới hạn thời gian của PHP bằng cách định cấu hình tùy chọn max_execution_time để tập lệnh của bạn không hết thời gian chờ và thoát với lỗi

Có một số phương pháp để đặt tùy chọn, chẳng hạn như định cấu hình tệp php. ini, sử dụng các hàm ini_set[] và set_time_limit[] và sử dụng. tập tin htaccess. Mặt khác, cPanel cho phép thiết lập tùy chọn max_execution_time từ giao diện web

Các phương pháp tăng giới hạn thời gian thực thi tối đa cho PHP

Cách tiếp cận này sẽ ảnh hưởng đến tất cả các tập lệnh PHP đang chạy trong hệ thống của bạn. Đó là giải pháp tốt nhất nếu bạn đang chạy một hệ thống hoặc khung quản lý nội dung như WordPress hoặc Drupal vì bạn không cần định cấu hình tùy chọn theo cách thủ công cho tất cả các tập lệnh bị ảnh hưởng

Đặt max_execution_time trong tệp cấu hình PHP của bạn thành số giây muốn cho phép các tập lệnh PHP của bạn thực thi

  1. mở php. ini bằng trình soạn thảo văn bản yêu thích của bạn.

    $ sudo vi /etc/php/7.2/apache2/php.ini

  2. Tìm chỉ thị max_execution_time. ________số 8

  3. Đặt giá trị cho max_execution_time tính bằng giây.

    max_execution_time = 300

    Đặt nó thành 0 sẽ không áp đặt bất kỳ giới hạn thời gian nào đối với việc thực thi các tập lệnh PHP của bạn

    Không nên đặt giá trị thành 0 ở cấp độ này vì thay đổi trên toàn hệ thống của phương thức này sẽ khiến mọi tập lệnh PHP hoạt động sai tiêu tốn thời gian quý giá của CPU một cách không cần thiết

  4. Khởi động lại máy chủ web của bạn.

    GFG Learning portal
    0

Về cơ bản, nó giống như giải pháp trước đó, nhưng nó thực sự là một chức năng bạn gọi từ tập lệnh PHP của mình. Đó là một chức năng chung để ghi đè bất kỳ tùy chọn cấu hình nào được đặt trong tệp cấu hình PHP của bạn và chỉ ảnh hưởng đến việc thực thi các tập lệnh gọi hàm

Khi được đặt ở đầu tập lệnh PHP của bạn, lệnh gọi hàm sau sẽ cho phép tập lệnh chạy trong 300 giây [5 phút]

GFG Learning portal
1

Lời gọi hàm phải được đặt trong các tệp được chia sẻ, chẳng hạn như tệp cấu hình cho CMS và khung. Đối với WordPress, đó là cài đặt wp. php.

Đây là một chức năng tích hợp sẵn của PHP đặc biệt để đặt giới hạn thời gian thực thi tối đa cho các tập lệnh PHP của bạn. Nó sẽ được gọi từ tập lệnh PHP của bạn như trong phương thức trước đó và ví dụ sau cũng đặt giới hạn thành 300 giây [5 phút]

GFG Learning portal
2

Đây là tùy chọn tốt nhất nếu bạn không có quyền truy cập của quản trị viên vào hệ thống của mình nhưng vẫn muốn đặt tùy chọn cho tất cả các tập lệnh trong thư mục dự án của mình

Thêm các dòng sau vào. htaccess trong thư mục dự án PHP của bạn và điều này sẽ được áp dụng cho tất cả các tập lệnh trong thư mục đó

GFG Learning portal
3

Sử dụng mod_php5. c nếu bạn đang lưu trữ trên PHP 5

htaccess là một giải pháp dành riêng cho Apache

Tùy chọn này có sẵn trong bảng điều khiển cPanel và có thể được sử dụng để thay đổi giới hạn thời gian thực thi tối đa của PHP

Giá trị tốt nhất cho max_execution_time trong PHP là gì?

Theo mặc định, thời gian thực thi tối đa của PHP được đặt thành 30 giây thời gian của CPU [thời gian dành cho các luồng và lệnh gọi hệ thống bị loại trừ khỏi điều này].

Làm cách nào để đặt max_execution_time trong PHP?

Để tăng thời gian thực hiện, chúng tôi sử dụng một chuỗi có tên là “max_execution_time“, đây là một tên cài đặt trong php. tập tin ini. cú pháp. ini_set['setting_name', value];

Làm cách nào để kiểm tra max_execution_time trong PHP?

Sử dụng lệnh max_execution_time của PHP . tập tin ini. Để xác minh giá trị hiện tại của lệnh max_execution_time và các lệnh khác, bạn có thể sử dụng hàm phpinfo[] .

Làm cách nào để thay đổi max_execution_time?

Cách tốt nhất để thay đổi cài đặt max_execution_time của PHP cho một ứng dụng là tạo một. người dùng. tệp ini trong thư mục chung của ứng dụng . trong đó 120 được thay đổi thành giá trị bạn cần đặt cho ứng dụng của mình.

Chủ Đề