Các lỗi trong php là gì?

Lỗi PHP ít nhiều là lỗi mã nghiêm trọng có thể bắt đầu từ một lỗi cú pháp đơn giản và kết thúc bằng các lỗi nghiêm trọng khiến quá trình thực thi mã bị dừng

Trong bài viết này, lỗi PHP. hướng dẫn đầy đủ, hãy xem có những loại lỗi nào và đối với từng loại lỗi, hãy xem xét các ví dụ cụ thể

Sau đó, chúng ta sẽ thấy một số phương thức cho phép chúng ta hiển thị các lỗi PHP

Mục lục

  • Lỗi PHP là gì?
  • Các loại lỗi PHP
    • Lưu ý
    • Cảnh báo
    • lỗi phân tích cú pháp
    • Lỗi nghiêm trọng
  • Ví dụ về lỗi PHP
    • lỗi phân tích cú pháp
    • lỗi cảnh báo
    • Thông báo lỗi
    • Lỗi nghiêm trọng
  • Cách hiển thị lỗi PHP
    • Chỉnh sửa tập lệnh PHP
    • chỉnh sửa php. tập tin ini
    • chỉnh sửa. tập tin htaccess
    • Bật lỗi từ cPanel
  • Phần kết luận

Các lỗi trong php là gì?

Lỗi PHP là gì?

Khi có lỗi cú pháp hoặc một biến hoặc hàm không được khai báo, nó được gọi là mã PHP và xảy ra lỗi. Vì vậy, chúng tôi nói về lỗi PHP khi có vấn đề trong mã

Như chúng ta sẽ thấy trong bài viết này, lỗi PHP. một hướng dẫn đầy đủ, có một số loại lỗi. Một số có thể làm gián đoạn quá trình thực thi tập lệnh, trong khi một số khác ngăn chúng tôi nhận được kết quả như mong đợi

Khi chúng tôi tạo một tập lệnh trong PHP, chúng tôi có thể gặp bốn loại lỗi. Hãy xem chúng là gì

Các loại lỗi PHP

Lỗi mã trong PHP có thể được chia thành bốn loại. thông báo, cảnh báo, lỗi phân tích cú pháp và lỗi nghiêm trọng

Lưu ý

Khi xảy ra lỗi như vậy trong mã tập lệnh, quá trình thực thi tập lệnh không bị gián đoạn. Thông báo lỗi không phải là một lỗi nghiêm trọng, nhưng điều này được sử dụng để chỉ ra rằng có thể có lỗi

Trường hợp phổ biến nhất là khi một nỗ lực được thực hiện để gọi một biến chưa được xác định

Khi một lỗi như vậy xảy ra, nó sẽ được chỉ báo là “Thông báo lỗi” hoặc “Thông báo PHP”

Cảnh báo

Các lỗi PHP thuộc loại "cảnh báo" là một phần của các lỗi không nghiêm trọng. Một lần nữa, như chúng ta vừa thấy về các lỗi thông báo, việc thực thi tập lệnh không bị gián đoạn

Ví dụ, loại lỗi này có thể xảy ra khi các tham số không chính xác được chuyển đến một hàm hoặc khi một nỗ lực được thực hiện để gọi một tệp không có mặt

Một lỗi như vậy được xác định là “Lỗi cảnh báo” hoặc “Cảnh báo PHP. ”

lỗi phân tích cú pháp

Trong PHP, lỗi phân tích cú pháp là lỗi cú pháp, vì vậy nó là lỗi trong mã như lỗi đánh máy, thiếu dấu chấm phẩy hoặc dấu ngoặc kép

Các lỗi PHP thuộc danh mục này được gọi là “Lỗi phân tích cú pháp” hoặc “Lỗi phân tích cú pháp PHP. ”

Lỗi nghiêm trọng

Lỗi nghiêm trọng là lỗi nghiêm trọng làm gián đoạn quá trình thực thi tập lệnh. Chúng có thể xảy ra trong quá trình khởi tạo, biên dịch hoặc trong quá trình thực thi mã

Những lỗi này được gọi là “Fatal error” hoặc “PHP fatal error. ”

Ví dụ về lỗi PHP

Bây giờ chúng ta đã xem xét bốn loại lỗi chính của PHP, hãy xem các ví dụ để giúp chúng ta xác định loại lỗi

Các lỗi trong php là gì?

lỗi phân tích cú pháp

Như chúng ta đã thấy, những lỗi này có thể được tạo ra trong quá trình viết mã. Trong hầu hết các trường hợp, chúng có thể là do lỗi đánh máy hoặc sơ suất

Đây là một ví dụ về lỗi phân tích cú pháp

Đoạn mã trên trả về lỗi này

Parse error: syntax error, unexpected token "echo", expecting "," or ";" in [...] on line 4

Trong trường hợp này, chúng tôi nhận được thông báo lỗi này vì ở dòng 3, ở cuối tiếng vang “Xin chào mọi người,” chúng tôi quên chèn dấu chấm phẩy

lỗi cảnh báo

Lỗi không nghiêm trọng thuộc loại này. Do đó, trong những trường hợp này, việc thực thi mã vẫn hoàn thành ngay cả khi gặp lỗi

Hãy xem một ví dụ về lỗi cảnh báo

Mã này trả về cảnh báo sau

Warning:  include(funzioni_matematiche.php): Failed to open stream: No such file or directory in [...] on line 6

Warning:  include(): Failed opening 'funzioni_matematiche.php' for inclusion (include_path='.:') in [...] on line 6
10

Trong trường hợp này, chương trình tiếp tục thực thi mã và như chúng ta thấy, hàm tổng được thực thi và kết quả mong đợi (10) được trả về cho chúng ta

Trước khi trả về kết quả, một lỗi Cảnh báo cảnh báo chúng tôi rằng tệp math_functions. php không có trên máy chủ

Thông báo lỗi

Giống như lỗi cảnh báo, lỗi thông báo không nghiêm trọng và không làm gián đoạn quá trình thực thi mã

Đây là một ví dụ về mã tạo ra lỗi thông báo

Kết quả sẽ như sau

Notice:  Undefined variable: v in [...] on line 8
Name: John Smith: 

Trong trường hợp này, chúng tôi đã gọi trong hàm tên_họ biến $v chưa được khai báo. Chúng tôi được hiển thị sự hiện diện của lỗi (biến không xác định) và đầu ra được trả về vì quá trình thực thi mã vẫn tiếp tục

Tuy nhiên, như chúng ta có thể thấy, trong trường hợp này, kết quả chúng ta nhận được không như mong đợi vì chỉ có trường “tên” được trả về cho chúng ta

Loại lỗi và do đó loại cảnh báo chúng tôi nhận được có thể khác nhau tùy thuộc vào phiên bản PHP mà chúng tôi đang sử dụng

Trong trường hợp này, trên thực tế, trong PHP 7, chúng tôi gặp lỗi Thông báo. Tuy nhiên, trong PHP 8, lỗi này đã được phân loại lại thành lỗi Cảnh báo

Để biết thêm chi tiết về việc phân loại lại các lỗi từ phiên bản 7 đến 8, bạn có thể tham khảo RFC

Lỗi nghiêm trọng

Lỗi nghiêm trọng là lỗi nghiêm trọng có thể xảy ra trong một số trường hợp, chẳng hạn như nếu chúng ta cố gọi một hàm không tồn tại

Có một ví dụ về lỗi nghiêm trọng trong mã này

Thực thi trả về lỗi này

Fatal error:  Uncaught Error: Call to undefined function moltiplica() in [...]:7
Stack trace:
#0 {main}
  thrown in [...] on line 7

Trong trường hợp này, chúng tôi đang cố gắng gọi hàm multi() chưa được khai báo. Hãy nhớ rằng khi xảy ra lỗi như vậy, việc thực thi mã sẽ bị hủy bỏ

Cách hiển thị lỗi PHP

Trong quá trình phát triển rất dễ gặp lỗi, thậm chí đơn giản là lỗi cú pháp. Để có thể xác định và sửa lỗi PHP, cần phải hiểu chúng là loại lỗi gì và chúng nằm ở đâu trong mã

Các lỗi trong php là gì?

Hãy nhớ rằng hiển thị lỗi chỉ nên được kích hoạt cho mục đích gỡ lỗi hoặc phát triển. Do đó, hãy nhớ tắt nó sau khi bạn hoàn thành

Có một số cách để hiển thị lỗi PHP

  • thêm mã vào tệp PHP
  • thêm chỉ thị vào php. tập tin ini
  • bật hiển thị lỗi với. tập tin htaccess
  • bật hiển thị lỗi từ cPanel
  • Tham khảo nhật ký lỗi

Hãy xem cách hiển thị lỗi bằng cách làm theo các phương pháp này

Chỉnh sửa tập lệnh PHP

Một trong những cách nhanh nhất để hiển thị lỗi PHP là thêm mã trực tiếp vào tập lệnh

Trong trường hợp này, chúng ta chỉ cần thêm những dòng này vào đầu tệp PHP

________số 8

Chỉ thị display_errors cho phép chúng tôi bật hoặc tắt hiển thị lỗi

Bằng cách bật display_startup_errors, chúng tôi cũng có thể hiển thị các lỗi gặp phải trong quá trình khởi tạo

Với chức năng “error_reporting”, chúng ta có thể chỉ định lỗi nào sẽ hiển thị. Tham số “E_ALL” cho phép hiển thị tất cả các lỗi

Thay vào đó, nếu chúng tôi muốn loại trừ các lỗi Thông báo, chúng tôi chỉ cần sử dụng tham số này

E_ALL & ~E_NOTICE

Hãy cẩn thận, vì với lỗi hệ thống này khiến quá trình thực thi tập lệnh dừng lại, chẳng hạn như lỗi phân tích cú pháp và lỗi nghiêm trọng, sẽ không được hiển thị. Trong trường hợp này, bạn phải tham khảo các tệp nhật ký để xem lỗi

chỉnh sửa php. tập tin ini

Để hiển thị lỗi PHP, chúng ta chỉ cần chỉnh sửa tệp php. tập tin ini

Hãy nhớ rằng một số nhà cung cấp không cho phép bạn chỉnh sửa tệp php. tập tin ini

Với tất cả các gói của chúng tôi từ lưu trữ chia sẻ đến các dịch vụ chuyên dụng như lưu trữ đám mây VPS và máy chủ chuyên dụng, bạn có thể thay đổi phiên bản PHP và chỉnh sửa tệp php. ban đầu

Nếu bạn muốn thử nghiệm dịch vụ, hãy tận dụng dịch vụ lưu trữ miễn phí của chúng tôi trong 14 ngày và thực hiện tất cả các thử nghiệm bạn muốn với gói dùng thử

Như chúng ta sẽ thấy trong phần tiếp theo của bài viết này, lỗi PHP. hướng dẫn đầy đủ, bạn cũng có thể kích hoạt hiển thị lỗi trực tiếp từ cPanel, kích hoạt cài đặt mà không cần phải chỉnh sửa code gì cả

Trong trường hợp này, hãy xem bạn cần thêm lệnh nào vào tệp php. ini để bật hiển thị lỗi

Parse error: syntax error, unexpected token "echo", expecting "," or ";" in [...] on line 4
0

Với các chỉ thị này, tất cả các lỗi sẽ được hiển thị trên màn hình

chỉnh sửa. tập tin htaccess

Chúng tôi cũng có thể kích hoạt hiển thị lỗi thông qua. tập tin htaccess. Trong trường hợp này, chúng ta chỉ cần thêm các dòng sau

Parse error: syntax error, unexpected token "echo", expecting "," or ";" in [...] on line 4
1

Bật lỗi từ cPanel

Từ cPanel, bạn có thể kích hoạt hiển thị mã lỗi trên màn hình hoặc tham khảo nhật ký lỗi

Hãy nhớ rằng đối với một trang web trực tuyến, tốt hơn là nên tham khảo nhật ký lỗi

Tuy nhiên, nếu trang web hoặc ứng dụng đang được phát triển, bạn có thể cần bật hiển thị màn hình

Hãy xem cách thực hiện

Tham khảo nhật ký lỗi

Trên các gói của chúng tôi, nhật ký lỗi được kích hoạt theo mặc định. Nếu bạn muốn kiểm tra lỗi mã, bạn có thể xem tệp error_log nằm trong thư mục gặp lỗi

File này được hệ thống tự sinh ra khi xảy ra lỗi code. Bạn chỉ cần sử dụng trình quản lý tệp của cPanel để định vị tệp và xem nó

Trong ví dụ này, bạn có thể thấy tệp error_log được lưu trữ nghiêm trọng và nhận thấy các lỗi PHP từ các ví dụ tôi đã chỉ cho bạn trước đó

Các lỗi trong php là gì?

Xem lỗi PHP trên màn hình

Trên các gói lưu trữ của chúng tôi, theo tùy chọn mặc định, việc quản lý phiên bản PHP được giao cho Cloudlinux. Do đó, trong trường hợp này, bạn có thể sử dụng các tùy chọn của công cụ Select PHP Version để cho phép hiển thị lỗi trên màn hình

Các lỗi trong php là gì?

Từ tab Tùy chọn, bạn có thể bật tùy chọn diplay_errors như bạn thấy trong ảnh chụp màn hình này

Các lỗi trong php là gì?
Trong ảnh chụp màn hình này, tùy chọn display_errors bị tắt

Hãy nhớ tắt tùy chọn trước khi xuất bản trang web hoặc sau khi bạn đã sửa lỗi

Phần kết luận

Chúng ta đã thấy rằng có nhiều loại lỗi PHP khác nhau và trong một số trường hợp, chúng có thể phá vỡ quá trình thực thi tập lệnh

Ngoài việc có thể tham khảo nhật ký lỗi, còn có một số cách để kích hoạt hiển thị mã lỗi trên màn hình. Hệ thống này giúp chúng tôi cho mục đích gỡ lỗi và cho phép chúng tôi xác định lỗi trong quá trình phát triển

Bạn đã biết về phân loại lỗi PHP?

Các cấp độ lỗi trong PHP là gì?

Thực tế có hai dạng lỗi trong PHP. các lỗi thông thường tiêu chuẩn và ngoại lệ . Ngoại lệ đã được giới thiệu trong PHP 5.

Lỗi PHP ở đâu?

Vị trí của tệp nhật ký lỗi có thể được đặt thủ công trong php. tập tin ini. Trên máy chủ Windows, trong IIS, nó có thể giống như "'error_log = C. \log_files\php_errors. log '" trong Linux, nó có thể là giá trị của "'/var/log/php_errors.

Lỗi và ngoại lệ trong PHP là gì?

Ngoại lệ là đối tượng mô tả lỗi hoặc hành vi không mong muốn của tập lệnh PHP . Các ngoại lệ được đưa ra bởi nhiều hàm và lớp PHP. Các hàm và lớp do người dùng định nghĩa cũng có thể đưa ra các ngoại lệ. Ngoại lệ là một cách hay để dừng một chức năng khi gặp dữ liệu mà nó không thể sử dụng.

Chức năng lỗi PHP là gì?

Các hàm báo lỗi được dùng để xử lý và ghi nhật ký lỗi . Các chức năng lỗi cho phép chúng tôi xác định các quy tắc xử lý lỗi của riêng mình và sửa đổi cách các lỗi có thể được ghi lại. Các chức năng ghi nhật ký cho phép chúng tôi gửi tin nhắn trực tiếp đến các máy, email hoặc nhật ký hệ thống khác.