Hàm lỗi và ghi nhật ký PHP
- Trang trước PHP Directory
- Trang tiếp theo PHP Filesystem
Giới thiệu về PHP Error
Hàm Error và Logging cho phép bạn xử lý và ghi lại lỗi.
Hàm Error cho phép người dùng định nghĩa các quy tắc xử lý lỗi và thay đổi cách ghi lại lỗi.
Hàm logging cho phép người dùng ghi lại ứng dụng và gửi thông báo log đến email, sổ ghi hệ thống hoặc các máy khác.
Hàm error được sử dụng để hoàn thành xử lý lỗi và ghi lại.
Hàm error cho phép chúng ta định nghĩa các quy tắc xử lý lỗi và thay đổi cách ghi lại lỗi.
Hàm logging cho phép chúng ta gửi thông báo trực tiếp đến các máy khác, email hoặc sổ ghi hệ thống.
Hàm báo cáo lỗi cho phép chúng ta xác định loại và cấp độ lỗi.
Cài đặt
Hàm error là một phần của PHP core. Bạn không cần cài đặt thêm để sử dụng các hàm này.
Cấu hình thời gian chạy
Hành vi của hàm error bị ảnh hưởng bởi cài đặt trong php.ini.
Các tùy chọn cấu hình Errors và logging như sau:
Tên | Giá trị mặc định | Mô tả | Khoảng độ có thể thay đổi |
---|---|---|---|
error_reporting | NULL | Cài đặt mức độ báo cáo lỗi (số nguyên hoặc hằng số) | PHP_INI_ALL |
display_errors | "1" |
Điều chỉnh có ghi lại lỗi làm ra màn hình hay ẩn lỗi khỏi người dùng. Lưu ý:Tính năng này không nên được sử dụng trong hệ thống sản xuất (chỉ hỗ trợ phát triển) |
PHP_INI_ALL |
display_startup_errors | "0" |
Dù display_errors được đặt là mở, thông tin lỗi trong quá trình khởi động PHP cũng sẽ không được hiển thị. Chú thích: Được khuyến cáo mạnh mẽ rằng ngoài mục đích gỡ lỗi, bạn nên đặt display_startup_errors là tắt. |
PHP_INI_ALL |
log_errors | "0" |
Cài đặt có ghi lại thông tin lỗi của script khi chạy vào sổ ghi lỗi máy chủ hoặc error_log hay không. Chú thích: Đây là mục cấu hình đặc biệt liên quan đến máy chủ. Chú thích: Trong hệ thống sản xuất, được khuyến cáo mạnh mẽ rằng bạn nên sử dụng bản ghi lỗi để ghi lại thông tin lỗi hiển thị trên trang web. |
PHP_INI_ALL |
log_errors_max_len | "1024" |
Cài đặt số byte tối đa của log_errors. Thông tin về nguồn lỗi sẽ được thêm vào error_log. Giá trị mặc định là 1024, nếu cài đặt là 0 thì không giới hạn độ dài. Cài đặt độ dài này có tác dụng hạn chế đối với các lỗi ghi lại, lỗi hiển thị và $php_errormsg. |
PHP_INI_ALL |
ignore_repeated_errors | "0" |
Định nghĩa có ghi chép thông tin lỗi trùng lặp hay không. Lỗi trùng lặp phải xuất hiện trên cùng một dòng mã trong cùng một tệp, trừ khi ignore_repeated_source được đặt thành true. |
PHP_INI_ALL |
ignore_repeated_source | "0" |
Định nghĩa có ghi chép thông tin lỗi trùng lặp hay không. Khi bỏ qua thông tin trùng lặp, cũng bỏ qua nguồn thông tin. Khi cài đặt này được kích hoạt, thông tin trùng lặp sẽ không được ghi chép lại là nó được tạo ra từ tệp khác hoặc dòng mã nguồn khác. |
PHP_INI_ALL |
report_memleaks | "1" | Nếu tham số này được đặt thành On (mặc định), sẽ hiển thị báo cáo về rò rỉ bộ nhớ được phát hiện bởi bộ quản lý bộ nhớ Zend. | PHP_INI_ALL |
track_errors | "0" | Nếu được kích hoạt, lỗi cuối cùng sẽ luôn tồn tại trong biến $php_errormsg. | PHP_INI_ALL |
html_errors | "1" | Tắt thẻ HTML trong thông tin lỗi. |
|
xmlrpc_errors | "0" | Nếu được kích hoạt, sẽ tắt báo cáo lỗi thông thường và thiết lập định dạng lỗi thành định dạng thông tin lỗi XML-RPC. | PHP_INI_SYSTEM |
xmlrpc_error_number | "0" | Sử dụng làm giá trị của phần tử XML-RPC faultCode. | PHP_INI_ALL |
docref_root | "" | (được hỗ trợ từ PHP 4.3) | PHP_INI_ALL |
docref_ext | "" | (được hỗ trợ từ PHP 4.3.2) | PHP_INI_ALL |
error_prepend_string | NULL | Định nghĩa chuỗi được xuất ra trước thông tin lỗi. | PHP_INI_ALL |
error_append_string | NULL | Định nghĩa chuỗi được xuất ra sau thông tin lỗi. | PHP_INI_ALL |
error_log | NULL |
Đặt tệp mà lỗi của vân bản sẽ được ghi chép vào. Tệp này phải là tệp mà người dùng máy chủ web có thể ghi. Nếu sử dụng giá trị đặc biệt syslog, thì gửi thông tin lỗi đến bộ ghi chép nhật ký hệ thống. |
PHP_INI_ALL |
Hàm lỗi và ghi nhật ký PHP
Hàm | Mô tả |
---|---|
debug_backtrace() | Tạo lại backtrace. |
debug_print_backtrace() | In lại backtrace. |
error_get_last() | Trả về lỗi cuối cùng đã xảy ra. |
error_log() | Gửi thông báo lỗi đến máy chủ ghi chép lỗi, tệp hoặc mục tiêu từ xa. |
error_reporting() | Định nghĩa báo cáo lỗi nào. |
restore_error_handler() | Khôi phục lại trình xử lý lỗi trước đây. |
restore_exception_handler() | Khôi phục trình xử lý ngoại lệ trước đó. |
set_error_handler() | Đặt hàm xử lý lỗi tùy chỉnh. |
set_exception_handler() | Đặt hàm xử lý ngoại lệ tùy chỉnh. |
trigger_error() | Tạo thông báo lỗi cấp người dùng. |
user_error() | Tên thay thế của trigger_error(). |
Hằng số lỗi và nhật ký của PHP 5 được định nghĩa trước.
Giá trị | Hằng số | Mô tả |
---|---|---|
1 | E_ERROR | Lỗi nghiêm trọng khi thời gian chạy. Lỗi không thể sửa được. Chấm dứt việc thực thi vũ bản. |
2 | E_WARNING | Lỗi không致命 khi thời gian chạy. Không chấm dứt việc thực thi vũ bản. |
4 | E_PARSE | Lỗi phân tích cú pháp khi biên dịch. Lỗi phân tích cú pháp chỉ được tạo bởi phân tích viên. |
8 | E_NOTICE | Thông báo thời gian chạy. Chỉ ra rằng vũ bản có thể gặp phải tình huống có thể biểu hiện như lỗi, nhưng trong vũ bản có thể chạy bình thường cũng có thể có thông báo tương tự. |
16 | E_CORE_ERROR | Lỗi nghiêm trọng trong quá trình khởi động khởi tạo PHP. Lỗi này tương tự E_ERROR, nhưng được tạo bởi lõi động cơ PHP. |
32 | E_CORE_WARNING | Cảnh báo trong quá trình khởi động khởi tạo PHP (lỗi không致命). Tương tự E_WARNING, nhưng được tạo bởi lõi động cơ PHP. |
64 | E_COMPILE_ERROR | Lỗi biên dịch nghiêm trọng. Tương tự E_ERROR, nhưng được tạo bởi động cơ script Zend. |
128 | E_COMPILE_WARNING | Cảnh báo khi biên dịch (lỗi không致命). Tương tự E_WARNING, nhưng được tạo bởi động cơ script Zend. |
256 | E_USER_ERROR | Thông báo lỗi do người dùng tạo. Tương tự E_ERROR, nhưng được tạo bởi người dùng tự mình trong mã bằng cách sử dụng hàm PHP trigger_error(). |
512 | E_USER_WARNING | Thông báo cảnh báo do người dùng tạo. Tương tự E_WARNING, nhưng được tạo bởi người dùng tự mình trong mã bằng cách sử dụng hàm PHP trigger_error(). |
1024 | E_USER_NOTICE | Thông báo thông tin do người dùng tạo. Tương tự E_NOTICE, nhưng được tạo bởi người dùng tự mình trong mã bằng cách sử dụng hàm PHP trigger_error(). |
2048 | E_STRICT | Kích hoạt đề xuất sửa đổi mã PHP để đảm bảo mã có tính tương thích và khả năng tương thích trước đây tốt nhất. |
4096 | E_RECOVERABLE_ERROR | Lỗi nghiêm trọng có thể bắt được. Nó biểu thị rằng đã xảy ra một lỗi rất nguy hiểm, nhưng vẫn chưa làm cho máy phát động PHP không ổn định. Nếu lỗi này không được bắt bởi bộ xử lý lỗi tùy chỉnh của người dùng (xem set_error_handler()), nó sẽ trở thành E_ERROR và mã sẽ kết thúc chạy. |
8192 | E_DEPRECATED | Thông báo thời gian chạy. Khi được kích hoạt, sẽ cảnh báo về mã có thể không hoạt động bình thường trong các phiên bản tương lai. |
16384 | E_USER_DEPRECATED | Thông tin cảnh báo do người dùng tạo ra. Tương tự E_DEPRECATED, nhưng được người dùng tự tạo trong mã bằng cách sử dụng hàm PHP trigger_error(). |
32767 | E_ALL | E_STRICT tất cả các thông tin lỗi và cảnh báo ngoại trừ. |
- Trang trước PHP Directory
- Trang tiếp theo PHP Filesystem