Trang chủ / Nhận và Sửa đổi mức báo cáo lỗi trong PHPGet and modify the error reporting level in PHP
Hàm Error_Reporting [] của PHP cho phép tập lệnh kiểm tra mức báo cáo lỗi hiện tại là gì và/hoặc sửa đổi nó. Tôi thường không khuyên bạn nên thay đổi cấp độ báo cáo lỗi theo chương trình, nhưng có thể có lúc cần thiết. Điều tuyệt vời là dễ dàng có thể có được cấp độ hiện tại, thay đổi nó, và sau đó đặt nó trở lại những gì trước đây.
Nhận mức báo cáo hiện tại
Để có được mức báo cáo Curent, chỉ cần gọi hàm ERROR_REPORTING [] mà không cần truyền bất kỳ tham số nào, như vậy:
$current_error_reporting = error_reporting[];
Điều này sẽ trả về một giá trị số nguyên. Ví dụ, bạn có thể thấy nếu E_Notice được đặt ở cấp báo cáo lỗi như vậy:
if[$current_error_reporting & E_NOTICE] { // do something }
Để thay đổi mức báo cáo lỗi thành một cái gì đó khác nhau, hãy chuyển cấp độ mới làm tham số. Trả về giá trị từ lệnh gọi hàm là mức báo cáo lỗi cũ. Ví dụ sau đây thay đổi mức báo cáo lỗi cho mọi thứ nhưng thông báo và lưu trữ cấp độ cũ trong một biến.old error reporting level. The following example changes the error reporting level to everything but notices and stores the old level in a variable.
$old_error_reporting = error_reporting[E_ALL ^ E_NOTICE];
Mức báo cáo lỗi cũ sau đó có thể được khôi phục sau:
error_reporting[$old_error_reporting];
Xóa thông báo khỏi cấp báo cáo hiện tại
Ví dụ cuối cùng này loại bỏ e_notice khỏi cấp độ báo cáo hiện tại, chạy một số mã khác và sau đó khôi phục lại cấp độ cũ.
// remove E_NOTICE from error reporting and store previous value $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; // run some other code // ... code ... // restore old error reporting level error_reporting[$old_error_reporting];
Trên đây có thể được kiểm tra bằng mã sau. Nó đặt mức báo cáo lỗi thành e_all khi bắt đầu để chúng tôi có thể chắc chắn khi kiểm tra giá trị ban đầu là gì:
error_reporting[E_ALL]; echo error_reporting[], "n"; $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; echo error_reporting[], "n"; error_reporting[$old_error_reporting]; echo error_reporting[], "n";
Đầu ra này
6143 6135 6143
được mong đợi: 6143 là e_all và 6135 là e_all mà không có e_notice.
[Php 4, Php 5, Php 7, Php 8]
Error_Reporting - Các bộ lỗi PHP được báo cáo — Sets which PHP errors are reported
Sự mô tả
Error_Reporting [? int $error_level
= null
]: int[?int $error_level
= null
]: int
Thông số
error_level
Mức độ lỗi mới. Nó có một hoặc một hằng số được đặt tên. Sử dụng các hằng số được đặt tên được khuyến khích mạnh mẽ để đảm bảo khả năng tương thích cho các phiên bản trong tương lai. Khi các mức lỗi được thêm vào, phạm vi số nguyên tăng, do đó các mức lỗi dựa trên số nguyên cũ sẽ không luôn luôn hoạt động như mong đợi.
Các hằng số mức lỗi có sẵn và ý nghĩa thực tế của các mức lỗi này được mô tả trong các hằng số được xác định trước.
Trả về giá trị
Trả về mức ERROR_REPORTING cũ hoặc mức hiện tại nếu không có tham số error_level
.
Thay đổi
8.0.0 | error_level bây giờ là vô hiệu. |
Ví dụ
Ví dụ #1 Error_Reporting [] Ví dụerror_reporting[] examples
if[$current_error_reporting & E_NOTICE] { // do something }2
Ghi chú
Mẹo
Truyền trong giá trị
if[$current_error_reporting & E_NOTICE] { // do something }3 sẽ hiển thị mọi lỗi có thể xảy ra, ngay cả khi các cấp độ và hằng số mới được thêm vào các phiên bản PHP trong tương lai. Hành vi tương đương với việc vượt qua hằng số
if[$current_error_reporting & E_NOTICE] { // do something }4.
if[$current_error_reporting & E_NOTICE] { // do something }4 constant.
Xem thêm
- Chỉ thị Display_errors
- Chỉ thị HTML_ERRORS
- Chỉ thị XMLRPC_ERRORS
- ini_set [] - Đặt giá trị của tùy chọn cấu hình
Thông tin tại Hephoz Dot de ¶ ¶
14 năm trước
if[$current_error_reporting & E_NOTICE] { // do something }5
if[$current_error_reporting & E_NOTICE] { // do something }6
if[$current_error_reporting & E_NOTICE] { // do something }7
if[$current_error_reporting & E_NOTICE] { // do something }8
if[$current_error_reporting & E_NOTICE] { // do something }9
jcastromail tại yahoo dot es ¶ ¶
1 năm trước
$old_error_reporting = error_reporting[E_ALL ^ E_NOTICE];0
$old_error_reporting = error_reporting[E_ALL ^ E_NOTICE];1
$old_error_reporting = error_reporting[E_ALL ^ E_NOTICE];2
$old_error_reporting = error_reporting[E_ALL ^ E_NOTICE];3
$old_error_reporting = error_reporting[E_ALL ^ E_NOTICE];4
Dave tại Davidhbrown dot chúng tôi ¶ ¶
16 năm trước
$old_error_reporting = error_reporting[E_ALL ^ E_NOTICE];5
$old_error_reporting = error_reporting[E_ALL ^ E_NOTICE];6
$old_error_reporting = error_reporting[E_ALL ^ E_NOTICE];7
if[$current_error_reporting & E_NOTICE] { // do something }9
Piancastelli Fernando ¶
17 năm trước
$old_error_reporting = error_reporting[E_ALL ^ E_NOTICE];9
error_reporting[$old_error_reporting];0
error_reporting[$old_error_reporting];1
if[$current_error_reporting & E_NOTICE] { // do something }9
Luisdev ¶ ¶
4 năm trước
error_reporting[$old_error_reporting];3
error_reporting[$old_error_reporting];4
error_reporting[$old_error_reporting];5
error_reporting[$old_error_reporting];6
error_reporting[$old_error_reporting];7
if[$current_error_reporting & E_NOTICE] { // do something }9
lhenry tại lhenry dot com ¶
2 năm trước
error_reporting[$old_error_reporting];9
// remove E_NOTICE from error reporting and store previous value $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; // run some other code // ... code ... // restore old error reporting level error_reporting[$old_error_reporting];0
// remove E_NOTICE from error reporting and store previous value $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; // run some other code // ... code ... // restore old error reporting level error_reporting[$old_error_reporting];1
// remove E_NOTICE from error reporting and store previous value $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; // run some other code // ... code ... // restore old error reporting level error_reporting[$old_error_reporting];2
if[$current_error_reporting & E_NOTICE] { // do something }9
Adam tại Adamhahn dot com ¶
5 năm trước
// remove E_NOTICE from error reporting and store previous value $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; // run some other code // ... code ... // restore old error reporting level error_reporting[$old_error_reporting];4
// remove E_NOTICE from error reporting and store previous value $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; // run some other code // ... code ... // restore old error reporting level error_reporting[$old_error_reporting];5
if[$current_error_reporting & E_NOTICE] { // do something }9
Keithm tại Aoeex dot com ¶ ¶
12 năm trước
// remove E_NOTICE from error reporting and store previous value $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; // run some other code // ... code ... // restore old error reporting level error_reporting[$old_error_reporting];7
// remove E_NOTICE from error reporting and store previous value $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; // run some other code // ... code ... // restore old error reporting level error_reporting[$old_error_reporting];8
// remove E_NOTICE from error reporting and store previous value $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; // run some other code // ... code ... // restore old error reporting level error_reporting[$old_error_reporting];9
error_reporting[E_ALL]; echo error_reporting[], "n"; $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; echo error_reporting[], "n"; error_reporting[$old_error_reporting]; echo error_reporting[], "n";0
error_reporting[E_ALL]; echo error_reporting[], "n"; $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; echo error_reporting[], "n"; error_reporting[$old_error_reporting]; echo error_reporting[], "n";1
if[$current_error_reporting & E_NOTICE] { // do something }9
Qeremy! gmail ¶ ¶
7 năm trước
error_reporting[E_ALL]; echo error_reporting[], "n"; $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; echo error_reporting[], "n"; error_reporting[$old_error_reporting]; echo error_reporting[], "n";3
error_reporting[E_ALL]; echo error_reporting[], "n"; $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; echo error_reporting[], "n"; error_reporting[$old_error_reporting]; echo error_reporting[], "n";4
if[$current_error_reporting & E_NOTICE] { // do something }9
Phát ban ¶ ¶
7 năm trước
error_reporting[E_ALL]; echo error_reporting[], "n"; $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; echo error_reporting[], "n"; error_reporting[$old_error_reporting]; echo error_reporting[], "n";6
error_reporting[E_ALL]; echo error_reporting[], "n"; $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; echo error_reporting[], "n"; error_reporting[$old_error_reporting]; echo error_reporting[], "n";7
if[$current_error_reporting & E_NOTICE] { // do something }9
Phát ban ¶ ¶
4 năm trước
error_reporting[E_ALL]; echo error_reporting[], "n"; $old_error_reporting = error_reporting[error_reporting[] ^ E_NOTICE]; echo error_reporting[], "n"; error_reporting[$old_error_reporting]; echo error_reporting[], "n";9
lhenry tại lhenry dot com ¶
2 năm trước
6143 6135 61430
6143 6135 61431
if[$current_error_reporting & E_NOTICE] { // do something }9
Adam tại Adamhahn dot com ¶
14 năm trước
6143 6135 61433
6143 6135 61434
6143 6135 61435
6143 6135 61436
if[$current_error_reporting & E_NOTICE] { // do something }9
jcastromail tại yahoo dot es ¶ ¶
1 năm trước
6143 6135 61438
6143 6135 61439
$error_level
0
$error_level
1
$error_level
2
$error_level
3
$error_level
4
if[$current_error_reporting & E_NOTICE] { // do something }9
Dave tại Davidhbrown dot chúng tôi ¶ ¶
16 năm trước
$error_level
6
$error_level
7
$error_level
8
if[$current_error_reporting & E_NOTICE] { // do something }9
Piancastelli Fernando ¶
5 năm trước
null
0
Keithm tại Aoeex dot com ¶ ¶
17 năm trước
null
1
Luisdev ¶ ¶
17 năm trước
null
2
null
3
null
4
null
5
null
6
null
7
null
8
null
9
if[$current_error_reporting & E_NOTICE] { // do something }9
Luisdev ¶ ¶
4 năm trước
error_level
1
error_level
2
error_level
3
error_level
4
error_level
5lhenry tại lhenry dot com ¶
2 năm trước
error_level
6
error_level
7
if[$current_error_reporting & E_NOTICE] { // do something }9
Adam tại Adamhahn dot com ¶
4 năm trước
error_level
9
if[$current_error_reporting & E_NOTICE] { // do something }00
if[$current_error_reporting & E_NOTICE] { // do something }01
if[$current_error_reporting & E_NOTICE] { // do something }9
lhenry tại lhenry dot com ¶
2 năm trước
if[$current_error_reporting & E_NOTICE] { // do something }03
if[$current_error_reporting & E_NOTICE] { // do something }04
if[$current_error_reporting & E_NOTICE] { // do something }9
Adam tại Adamhahn dot com ¶
5 năm trước
if[$current_error_reporting & E_NOTICE] { // do something }06
if[$current_error_reporting & E_NOTICE] { // do something }07
if[$current_error_reporting & E_NOTICE] { // do something }08
if[$current_error_reporting & E_NOTICE] { // do something }9
Keithm tại Aoeex dot com ¶ ¶
17 năm trước
if[$current_error_reporting & E_NOTICE] { // do something }10
if[$current_error_reporting & E_NOTICE] { // do something }11
if[$current_error_reporting & E_NOTICE] { // do something }12
if[$current_error_reporting & E_NOTICE] { // do something }9
Luisdev ¶ ¶
2 năm trước
if[$current_error_reporting & E_NOTICE] { // do something }14