Làm cách nào để bật báo cáo lỗi e_all trong PHP?
Trong quá trình thực thi ứng dụng PHP, nó có thể tạo ra nhiều cảnh báo và lỗi. Đối với các nhà phát triển đang tìm cách khắc phục sự cố ứng dụng hoạt động sai, việc có thể kiểm tra các lỗi này là rất quan trọng. Mặt khác, các nhà phát triển thường gặp khó khăn khi cố gắng hiển thị lỗi từ các ứng dụng PHP của họ. Thay vào đó, các ứng dụng của họ chỉ đơn giản là ngừng hoạt động Show
Trước hết, bạn nên lưu ý rằng với PHP, một số lỗi khiến tập lệnh không được thực thi. Mặt khác, một số lỗi chỉ hiển thị thông báo lỗi kèm theo cảnh báo. Sau đó, bạn sẽ học cách sử dụng PHP để hiển thị hoặc ẩn tất cả báo cáo lỗi Trong PHP, có bốn loại lỗi
Bạn đã đến đúng nơi nếu đang gặp sự cố với ứng dụng web PHP của mình và cần xem tất cả các lỗi và cảnh báo. Chúng ta sẽ xem xét tất cả các cách khác nhau để kích hoạt lỗi và cảnh báo PHP trong hướng dẫn này 1. Để hiển thị tất cả các lỗi PHPThêm những dòng này vào tệp mã PHP của bạn là cách nhanh nhất để xuất tất cả các lỗi và cảnh báo PHP
Hàm ini_set() sẽ cố gắng ghi đè cấu hình của tệp PHP ini Các lệnh display_errors và display_startup_errors chỉ là hai trong số các tùy chọn
Tài liệu chính thức chứa danh sách các lệnh có thể bị ghi đè bởi hàm ini_set(). Thật không may, các vấn đề về phân tích cú pháp như thiếu dấu chấm phẩy hoặc dấu ngoặc nhọn sẽ không được hiển thị bởi hai chỉ thị này. Cấu hình PHP ini phải được thay đổi trong trường hợp này Để hiển thị tất cả các lỗi, bao gồm lỗi phân tích cú pháp, trong xampp, hãy thực hiện các thay đổi sau đối với tệp php. ini và khởi động lại máy chủ apache
trong PHP. ini, hãy đặt lệnh hiển thị lỗi để bật. Nó sẽ hiển thị tất cả các lỗi không thể nhìn thấy bằng cách gọi hàm ini_set(), chẳng hạn như lỗi cú pháp và lỗi phân tích cú pháp 2. . cấu hình htaccess để hiển thị lỗi PHPCác tệp thư mục thường có thể truy cập được đối với các nhà phát triển. Các. htaccess trong thư mục gốc hoặc thư mục chung của dự án cũng có thể được sử dụng để bật hoặc tắt lệnh hiển thị lỗi PHP
htaccess có các chỉ thị cho display_startup_errors và display_errors, tương tự như những gì sẽ được thêm vào mã PHP để hiển thị lỗi PHP. Lợi ích của việc hiển thị hoặc tắt thông báo lỗi theo cách này là quá trình phát triển và sản xuất có thể có các. htaccess, với hiển thị lỗi chặn sản xuất Bạn có thể muốn điều chỉnh display_errors trong. htaccess hoặc PHP của bạn. ini tùy thuộc vào tệp bạn có quyền truy cập và cách bạn xử lý việc triển khai và cấu hình máy chủ. Nhiều công ty lưu trữ sẽ không cho phép bạn thay đổi PHP. ini để bật lỗi hiển thị 3. Kích hoạt cảnh báo và thông báo chi tiếtCác cảnh báo ban đầu dường như không ảnh hưởng đến ứng dụng đôi khi có thể dẫn đến các lỗi nghiêm trọng trong một số trường hợp nhất định. Những cảnh báo này phải được khắc phục vì chúng chỉ ra rằng ứng dụng sẽ không hoạt động bình thường trong một số trường hợp nhất định. Nếu những cảnh báo này dẫn đến một số lượng lớn lỗi, sẽ thực tế hơn nếu ẩn lỗi và chỉ hiển thị thông báo cảnh báo
Hiển thị cảnh báo và ẩn lỗi đơn giản như thêm một dòng mã cho nhà phát triển. Tham số cho chức năng báo lỗi sẽ là “E_WARNING. E_NOTICE” để hiển thị cảnh báo và thông báo. Là toán tử bitwise, chức năng báo cáo lỗi có thể chấp nhận các tham số E_ERROR, E_WARNING, E_PARSE và E_NOTICE Để dễ tham khảo, các hằng số này cũng được trình bày chi tiết trong Hướng dẫn sử dụng PHP trực tuyến Để báo cáo tất cả các lỗi ngoại trừ thông báo, hãy sử dụng tùy chọn "E_ALL & E_NOTICE", trong đó E_ALL đề cập đến tất cả các tham số tiềm năng của chức năng báo cáo lỗi 4. Chuyên sâu về hàm error_reporting()Một trong những kết quả đầu tiên khi trình duyệt của bạn "Lỗi PHP" là một liên kết đến tài liệu hàm error_reporting() Hàm PHP error_reporting() cho phép các nhà phát triển chọn lỗi nào và bao nhiêu lỗi sẽ được hiển thị trong ứng dụng của họ. Hãy nhớ rằng chức năng này sẽ đặt chỉ thị báo cáo lỗi trong cấu hình PHP ini trong thời gian chạy
Giá trị 0 phải được cung cấp cho hàm error_reporting() để xóa tất cả lỗi, cảnh báo, thông báo phân tích cú pháp và thông báo. Dòng mã này sẽ không thực tế nếu đưa vào từng tệp PHP. Tốt nhất là tắt thông báo báo cáo trong tệp ini PHP hoặc tệp. tập tin htaccess
Một giá trị số nguyên cũng được truyền dưới dạng đầu vào cho hàm error_reporting(). Trong PHP, chúng tôi có thể sử dụng phương pháp này để hiển thị lỗi. Trong PHP có nhiều loại lỗi khác nhau. Tất cả các lỗi PHP được biểu thị bằng mức -1. Ngay cả với các cấp độ và hằng số mới, việc chuyển giá trị -1 sẽ hoạt động trong các phiên bản PHP trong tương lai
Các biến có thể được sử dụng ngay cả khi chúng không được khai báo trong PHP. Điều này không được khuyến nghị vì các biến không được khai báo có thể tạo ra sự cố trong ứng dụng khi chúng được sử dụng trong các vòng lặp và điều kiện Điều này cũng có thể xảy ra khi biến đã nêu được đánh vần khác với biến được sử dụng trong điều kiện hoặc vòng lặp. Các biến không được khai báo này sẽ được hiển thị trong ứng dụng web nếu E_NOTICE được cung cấp trong hàm error_reporting()
Bạn có thể lọc lỗi nào được hiển thị bằng hàm error_reporting(). Ký tự “~” là viết tắt của “not” hoặc “no”, do đó tham số ~E_NOTICE chỉ ra rằng các thông báo sẽ không được hiển thị Trong mã, hãy chú ý đến các chữ cái "&" và ". " Biểu tượng “&” là viết tắt của “true for all,” trong khi “. ký tự ” là viết tắt của “true for both. ” Trong PHP, hai ký tự này có nghĩa giống nhau. HOẶC và VÀ 5. Sử dụng hàm error_log() để ghi lỗi PHPThông báo lỗi không được hiển thị cho người dùng cuối trong quá trình sản xuất, nhưng chúng phải được ghi lại cho mục đích theo dõi. Cách tiếp cận tốt nhất để theo dõi các thông báo lỗi này trong ứng dụng web trực tiếp là theo dõi chúng trong các tệp nhật ký Hàm error_log(), chấp nhận bốn tham số, cung cấp một cách đơn giản để sử dụng các tệp nhật ký. Tham số đầu tiên, chứa thông tin về các lỗi nhật ký hoặc nội dung cần ghi, là tham số duy nhất phải được cung cấp. Các tham số loại, đích và tiêu đề của chức năng này đều là tùy chọn ________số 8_______Nếu tùy chọn loại không được chỉ định, nó sẽ mặc định là 0, có nghĩa là thông tin nhật ký này sẽ được thêm vào tệp nhật ký của máy chủ web
Nhật ký lỗi được cung cấp trong tham số thứ ba sẽ được gửi qua email bằng tham số loại 1. Để sử dụng tính năng này, ini PHP phải có cấu hình SMTP hợp lệ để gửi email Máy chủ, loại mã hóa, tên người dùng, mật khẩu và cổng nằm trong số các chỉ thị SMTP ini. Loại báo cáo lỗi này được khuyến nghị để ghi nhật ký hoặc thông báo lỗi phải được sửa càng sớm càng tốt 0Loại 3 phải được sử dụng để ghi nhật ký tin nhắn trong một tệp khác do cấu hình của máy chủ web thiết lập. Tham số thứ ba chỉ định vị trí của tệp nhật ký mà máy chủ web phải ghi được. Vị trí của tệp nhật ký có thể là thư viện tương đối hoặc tuyệt đối nơi mã này được gọi Bạn cũng có thể tham khảo tài liệu về hàm error_log() để biết thêm 6. Sử dụng cấu hình máy chủ web để ghi lại lỗi PHPKỹ thuật lý tưởng để ghi lại lỗi là xác định chúng trong tệp cấu hình máy chủ web, thay vì sửa đổi các tham số trong tệp cấu hình máy chủ web. htaccess hoặc thêm các dòng trong mã PHP để hiển thị lỗi 1Các tệp này phải được thêm vào máy chủ ảo của một trang hoặc ứng dụng HTML cụ thể trong Apache, tệp này thường được tìm thấy trong thư mục các trang có sẵn trong Ubuntu hoặc tệp httpd-vhosts trong Windows 2Lệnh chỉ được gọi là error_log() trong Nginx, giống như trong Apache. Các tệp nhật ký cho cả máy chủ web Apache và Nginx phải được máy chủ web ghi. May mắn thay, các thư mục chứa tệp nhật ký của hai máy chủ web này đã có thể ghi được sau khi cài đặt 7. Thu thập lỗi PHP bằng StatusAtatus là một giải pháp Quản lý hiệu suất ứng dụng (APM) thu thập tất cả các yêu cầu đối với các ứng dụng PHP của bạn mà không yêu cầu bạn thay đổi mã nguồn của mình. Tuy nhiên, công cụ này không chỉ theo dõi hiệu suất ứng dụng của bạn. Khả năng tự động thu thập tất cả các lỗi chưa được xử lý trong ứng dụng PHP của Atatus là một trong những tính năng tốt nhất của nó Để khắc phục các ngoại lệ PHP, hãy thu thập tất cả thông tin cần thiết như lớp, thông báo, URL, tác nhân yêu cầu, phiên bản, v.v. Mỗi lỗi PHP được ghi lại và ghi lại bằng một dấu vết ngăn xếp đầy đủ, với dòng mã nguồn chính xác được đánh dấu, để giúp sửa lỗi dễ dàng Đọc hướng dẫn để biết thêm về Giám sát hiệu suất PHP Tất cả các lỗi được tự động ghi lại và cấu trúc trong Atatus để có thể dễ dàng xem chúng. Atatus không chỉ cho bạn biết lỗi nào đã xảy ra mà còn kiểm tra xem chúng xảy ra ở đâu và tại sao. Nhật ký cũng hiển thị thời gian và số lần xuất hiện, giúp bạn dễ dàng tập trung vào vấn đề cần giải quyết hơn nhiều Bắt đầu dùng thử Atatus miễn phí trong 14 ngày ngay bây giờ Bản tóm tắtKhi code PHP có vấn đề, xảy ra lỗi PHP. Ngay cả những thứ đơn giản như cú pháp sai hoặc quên dấu chấm phẩy cũng có thể dẫn đến lỗi, khiến thông báo xuất hiện. Ngoài ra, nguyên nhân có thể phức tạp hơn, chẳng hạn như gọi một biến không chính xác, có thể dẫn đến lỗi nghiêm trọng và khiến hệ thống của bạn gặp sự cố Hướng dẫn này đã chỉ cho bạn một số cách để kích hoạt và hiển thị tất cả các lỗi và cảnh báo PHP. Bạn có thể nâng cao khả năng gỡ lỗi các sự cố PHP bằng cách nhận thông báo lỗi nhanh chóng và chính xác Làm cách nào để hiển thị tất cả các cảnh báo lỗi trong PHP?Đây là cách nhanh nhất để hiển thị tất cả các cảnh báo và lỗi PHP. . ini_set('lỗi_hiển_thị', 1); ini_set ('hiển thị_khởi động_lỗi', 1); error_reporting(E_ALL); Làm thế nào báo cáo lỗi được thực hiện trong PHP?Theo mặc định, PHP gửi nhật ký lỗi tới hệ thống ghi nhật ký của máy chủ hoặc tệp, tùy thuộc vào cách đặt cấu hình error_log trong php. tập tin ini. Bằng cách sử dụng hàm error_log(), bạn có thể gửi nhật ký lỗi tới một tệp cụ thể hoặc một đích đến từ xa .
Làm cách nào để tắt hết lỗi trong PHP?Để tắt thành công báo cáo lỗi trong PHP, chúng tôi sử dụng hàm error_reporting() .
Làm cách nào để bật báo cáo lỗi trong laravel?Thông qua cấu hình/ứng dụng của bạn. php , đặt 'debug' => env('APP_DEBUG', false), thành true . Hoặc theo một cách tốt hơn, kiểm tra của bạn. env và đảm bảo đặt thành phần gỡ lỗi thành true. |