Môi trường mặc định của CodeIgniter là môi trường đang phát triển nên mặc định báo lỗi ở trạng thái bật, nếu bạn muốn tắt báo cáo thì hãy thay đổi giá trị môi trường [ở đầu chỉ mục chính. php] để sản xuất hoặc thử nghiệm
define['ENVIRONMENT', 'development']; // display_errors = ture, E_ALL define['ENVIRONMENT', 'development']; // display_errors = false, E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE define['ENVIRONMENT', 'development']; // display_errors = false, E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE
Phương pháp trên sẽ chỉ hoạt động với For >= 2. phiên bản xci. Đối với < 2. x chỉnh sửa chỉ mục cấp cao nhất. php và điều chỉnh hàm error_reporting để sử dụng E_ALL. Thay vì E_ALL, bạn có thể thay đổi nó thành bất kỳ hằng số lỗi được xác định trước nào
error_reporting[E_ALL];
Lỗi cơ sở dữ liệu
Các lỗi PHP đã tắt, nhưng bất kỳ lỗi MySQL nào vẫn sẽ hiển thị. Để tắt chúng, hãy vào ứng dụng/cấu hình/cơ sở dữ liệu. php và sau đó Đặt tùy chọn db_debug thành false
$db['default']['db_debug'] = FALSE;
Vì vậy, nếu các thông báo lỗi bị ẩn, làm cách nào khác để chúng tôi có thể biết liệu có điều gì đó không hoạt động đúng không? . Bạn có thể định cấu hình tệp nhật ký CI của mình bằng cách đi tới cấu hình. php trong thư mục ứng dụng/cấu hình của bạn và đặt giá trị thành $config['log_threshold']
.
Lưu ý. Làm cho thư mục /application/logs của bạn có thể ghi
$config['log_threshold'] = 1;
Tùy chọn ngưỡng là. Bạn có thể kích hoạt ghi nhật ký lỗi bằng cách đặt ngưỡng trên 0. Ngưỡng xác định những gì được ghi lại. Tùy chọn ngưỡng là
0 = Tắt ghi nhật ký, Lỗi ghi nhật ký ĐÃ TẮT
1 = Thông báo lỗi [bao gồm cả lỗi PHP]
2 = Thông báo gỡ lỗi
3 = Informational Messages
4 = All Messages
Bạn cũng có thể chuyển vào một mảng có các mức ngưỡng để hiển thị các loại lỗi riêng lẻ
mảng [2] = Thông báo Gỡ lỗi, không có Thông báo Lỗi
Đối với một trang web trực tiếp, bạn thường chỉ bật Lỗi [1] để ghi nhật ký nếu không các tệp nhật ký của bạn sẽ đầy rất nhanh
Tôi hy vọng bạn thích bài đăng này, vui lòng bình luận bên dưới, đề xuất của bạn và các vấn đề nếu bạn gặp phải - chúng tôi ở đây để giải quyết vấn đề của bạn
Nhiều khi trong quá trình sử dụng ứng dụng chúng ta gặp lỗi. Sẽ rất khó chịu cho người dùng nếu lỗi không được xử lý đúng cách. CodeIgniter cung cấp cơ chế xử lý lỗi dễ dàng
Bạn muốn các thông báo được hiển thị khi ứng dụng đang ở chế độ đang phát triển thay vì ở chế độ sản xuất vì các thông báo lỗi có thể được giải quyết dễ dàng ở giai đoạn đang phát triển
Môi trường của ứng dụng của bạn có thể được thay đổi, bằng cách thay đổi dòng dưới đây từ chỉ mục. tập tin php. Điều này có thể được đặt thành bất kỳ thứ gì nhưng thông thường có ba giá trị [phát triển, thử nghiệm, sản xuất] được sử dụng cho mục đích này
define['ENVIRONMENT', isset[$_SERVER['CI_ENV']] ? $_SERVER['CI_ENV'] : 'development'];
Môi trường khác nhau sẽ yêu cầu mức báo cáo lỗi khác nhau. Theo mặc định, chế độ phát triển sẽ hiển thị lỗi và thử nghiệm và chế độ trực tiếp sẽ ẩn chúng. CodeIgniter cung cấp ba chức năng như hình bên dưới để xử lý lỗi
Hàm show_error[] hiển thị lỗi ở định dạng HTML ở đầu màn hình
cú pháp
show_error[$message, $status_code, $heading = 'Đã Gặp Lỗi']Thông số
$message [hỗn hợp] - Thông báo lỗi
$status_code [int] − Mã trạng thái phản hồi HTTP
$heading [string] - Tiêu đề trang lỗi
Loại trả lại
TrộnHàm show_404[] hiển thị lỗi nếu bạn đang cố truy cập một trang không tồn tại
cú pháp
show_404[$page = '', $log_error = TRUE]Thông số
$page [chuỗi] – chuỗi URI
$log_error [bool] – Có ghi nhật ký lỗi hay không
Loại trả lại
Hàm log_message[] được sử dụng để viết thông điệp tường trình. Điều này hữu ích khi bạn muốn viết tin nhắn tùy chỉnh
cú pháp
log_message[$level, $message, $php_error = FALSE]Thông số
$level [chuỗi] - Cấp nhật ký. 'lỗi', 'gỡ lỗi' hoặc 'thông tin'
$message [string] − Tin nhắn cần ghi
$php_error [bool] - Liệu chúng ta có đang ghi thông báo lỗi PHP gốc hay không
Loại trả lại
khoảng trốngGhi nhật ký có thể được kích hoạt trong ứng dụng/config/config. tập tin php. Đưa ra dưới đây là ảnh chụp màn hình của cấu hình. php, nơi bạn có thể đặt giá trị ngưỡng
/* |-------------------------------------------------------------------------------- | Error Logging Threshold |-------------------------------------------------------------------------------- | You can enable error logging by setting a threshold over zero. The | threshold determines what gets logged. Threshold options are: | | 0 = Disable logging, Error logging TURNED OFF | 1 = Error Message [including PHP errors] | 2 = Debug Message | 3 = Informational Messages | 4 = All Messages | | You can also pass an array with threshold levels to show individual error types | | array[2] = Debug Message, without Error Messages | For a live site you'll usually only enable Errors [1] to be logged otherwise | your log files will fill up very fast. | */ $config['log_threshold'] = 0;
Bạn có thể tìm thấy các thông điệp tường trình trong application/log/. Đảm bảo rằng thư mục này có thể ghi được trước khi bạn bật tệp nhật ký
Có thể tìm thấy nhiều mẫu thông báo lỗi khác nhau trong ứng dụng/lượt xem/lỗi/cli hoặc ứng dụng/lượt xem/lỗi/html