Hướng dẫn php get error type - php get loại lỗi

Trong bài này, chúng ta sẽ tìm hiểu về các loại lỗi [error] trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP.các loại lỗi [error] trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP.

Nội dung chính

  • 1. Syntax error trong PHP
  • 2. Fatal error trong PHP
  • 3. Warning error trong PHP
  • 4. Notice error trong PHP
  • 5. Error constants trong PHP
  • Hàm die[] và exit[]
  • throw và lớp Exception
  • Sử dụng try ... catch ... để bắt ngoại lệ
  • Tạo các Exception riêng
  • Tạo exception_handler và error_handler riêng
  • set_exception_handler
  • set_error_handler

Lỗi [error] là các vấn đề hoặc tình trạng bất thường, ảnh hưởng nghiêm trọng đến chương trình. Khi xảy ra lỗi, chương trình thường sẽ ngừng thực thi. Có 4 loại lỗi cơ bản trong PHP là:

    • Parse error hoặc Syntax error
    • Fatal error
    • Warning error
    • Notice error

1. Syntax error trong PHP

2. Fatal error trong PHP còn gọi là lỗi cú pháp. Lỗi này xảy ra là do chúng ta không tuân thủ cú pháp của PHP khi soạn thảo chương trình. Các syntax error thường mắc phải như lỗi thiếu hoặc thừa dấu ngoặc, thiếu dấu chấm phẩy,… Lỗi cú pháp được phát hiện bởi trình thông dịch PHP [PHP interpreter].

3. Warning error trong PHP


4. Notice error trong PHP$x thiếu dấu chấm phẩy ; nên gây ra lỗi cú pháp. Bên dưới là một số ví dụ syntax error khác.


2. Fatal error trong PHP

3. Warning error trong PHP xảy ra khi chúng ta gọi một hàm chưa được định nghĩa. Ví dụ:


4. Notice error trong PHP
sum = 20
Fatal error: Uncaught Error: Call to undefined function diff[]

3. Warning error trong PHP

4. Notice error trong PHP là một cảnh báo và không dừng thực thi chương trình. Warning error thường xảy ra khi include hoặc require một file không tồn tại. Ví dụ:


4. Notice error trong PHP
Warning: include[gochocit.php]: Failed to open stream: No such file or directory in C:\xampp\htdocs\gochocit\index.php on line 3
Hello all!

4. Notice error trong PHP

5. Error constants trong PHP tương tự như Warning error. Notice error thông báo chương trình có một vấn đề nào đó nhưng vẫn cho phép thực thi script PHP.


5. Error constants trong PHP

Hàm die[] và exit[]error constant được định nghĩa sẵn trong PHP.

throw và lớp Exception Sử dụng try ... catch ... để bắt ngoại lệ Tạo các Exception riêng
1 Tạo exception_handler và error_handler riêngLỗi [error] là các vấn đề hoặc tình trạng bất thường, ảnh hưởng nghiêm trọng đến chương trình. Khi xảy ra lỗi, chương trình thường sẽ ngừng thực thi. Có 4 loại lỗi cơ bản trong PHP là:
2 Parse error hoặc Syntax errorFatal error
4 Warning errorNotice error
8 Syntax error hoặc Parse error còn gọi là lỗi cú pháp. Lỗi này xảy ra là do chúng ta không tuân thủ cú pháp của PHP khi soạn thảo chương trình. Các syntax error thường mắc phải như lỗi thiếu hoặc thừa dấu ngoặc, thiếu dấu chấm phẩy,… Lỗi cú pháp được phát hiện bởi trình thông dịch PHP [PHP interpreter].Ví dụ lỗi cú pháp trong PHP
16 Trong ví dụ trên, câu lệnh gán giá trị cho biến $x thiếu dấu chấm phẩy ; nên gây ra lỗi cú pháp. Bên dưới là một số ví dụ syntax error khác.Fatal error xảy ra khi chúng ta gọi một hàm chưa được định nghĩa. Ví dụ:
32 Kết quảWarning error là một cảnh báo và không dừng thực thi chương trình. Warning error thường xảy ra khi include hoặc require một file không tồn tại. Ví dụ:
64 Notice error tương tự như Warning error. Notice error thông báo chương trình có một vấn đề nào đó nhưng vẫn cho phép thực thi script PHP.Bên dưới là những error constant được định nghĩa sẵn trong PHP.
128 Giá trịHằng
32767 Ý nghĩaE_ERROR

Một fatal error sẽ làm dừng chương trình

E_WARNING

  • Những warning sẽ không làm dừng chương trình
  • E_PARSE
  • Lỗi khi phân tích cú pháp
  • E_NOTICE
  • Notice error và chương trình có thể chạy bình thường

E_CORE_ERROR

Fatal error xảy ra khi PHP mới khởi chạy. Lỗi này liên quan đến core PHP

Nội dung chính

  • Hàm die[] và exit[]
  • throw và lớp Exception
  • Sử dụng try ... catch ... để bắt ngoại lệ
  • Tạo các Exception riêng
  • Tạo exception_handler và error_handler riêng
  • set_exception_handler
  • set_error_handler

Nội dung chính

  • Hàm die[] và exit[]
  • throw và lớp Exception
  • Sử dụng try ... catch ... để bắt ngoại lệ
  • Tạo các Exception riêng
  • Tạo exception_handler và error_handler riêng
  • set_exception_handler
  • set_error_handler

Hàm die[] và exit[]

Lỗi [error] là các vấn đề hoặc tình trạng bất thường, ảnh hưởng nghiêm trọng đến chương trình. Khi xảy ra lỗi, chương trình thường sẽ ngừng thực thi. Có 4 loại lỗi cơ bản trong PHP là:

exit [[$status]]
//hoặc
exit [ int $status ]

Parse error hoặc Syntax error

Fatal error

throw và lớp Exception

Sử dụng try ... catch ... để bắt ngoại lệErrorException, ], trong PHP7 còn có thêm


3 Sau đó để phát sinh ngoại lệ để chương trình chuyển hướng theo ngoại lệ bạn cần cú pháp

4, các lệnh tiếp sau

5 trong một block sẽ không được thi hành.

Tạo các Exception riêng

Khi có đoạn code gọi lệnh


5 như trên, chương trình sẽ điều hướng tới hàm bắt lỗi mặc định của PHP hàm này sẽ hiện thị các thông tin lỗi và kết thúc chương trình. Phần sau sẽ thảo luận cách xây dựng hàm này và đăng ký với PHP

Sử dụng try ... catch ... để bắt ngoại lệ

Giờ thay vì để hàm xử lỗi của PHP xử lý các Exception như trên, bạn muốn bắt các lỗi này ngay trong đoạn code xảy ra lỗi, để xử lý kết thúc hoặc chạy tiếp theo yêu cầu của bạn, lúc này bạn dùng cú pháp lệnh


7. Cú pháp cơ bản như sau:


0

Nếu sử dụng code


7 như trên, thì code trong khối try nếu phát sinh exception thì chương trình không kết thúc mà chuyển hướng tới khối catch với thông tin về Exception là bến

9

Trở lại ví dụ trên, viết để bắt ngoại lệ như sau:


1

Bạn có thể sử dụng nhiều khối

sum = 20
Fatal error: Uncaught Error: Call to undefined function diff[]
0 để bắt các loại Exception khác nhau, ví dụ:


2

Trong cú pháp


7 bạn cũng có thể tạo ra một khối ở cuối cùng có tên là
sum = 20
Fatal error: Uncaught Error: Call to undefined function diff[]
2, các code trong khối này luôn được thi hành


3

Tạo các Exception riêng

Nếu lớp Exception mặc định như Exception, ErrorException chưa đủ dùng cho bạn, bạn có thể tạo ra các Exeption riêng bằng cách kế thừa lớp Exception


4

Tạo exception_handler và error_handler riêng

set_exception_handler

Khi ứng dụng phát sinh ngoại lệ bằng lệnh


5, nếu ngoại lệ không bị bắt lại bằng khối lệnh

7 thì ngoại lệ đó sẽ chuyển cho hàm xử lý ngoại lệ mặc định của PHP. Giờ nếu bạn muốn tạo ra hàm mặc định này thì làm như sau: Tạo hàm riêng xử lý ngoại lệ có dạng
sum = 20
Fatal error: Uncaught Error: Call to undefined function diff[]
5, sau đó dùng hàm set_exception_handler['my_exception_handler'] để đăng ký với PHP. Ví dụ:


5

set_error_handler

Ngoài các ngoại lệ phát sinh do logic chương trình ra, ứng dụng có thể xảy ra các lỗi nghiêm trọng khác nhau trong quá trình chạy. Để định nghĩa hàm riêng các lỗi này thì bạn làm như sau: Tạo hàm riêng xử lý lỗi có dạng

sum = 20
Fatal error: Uncaught Error: Call to undefined function diff[]
6, sau đó dùng hàm set_error_handler['myErrorHandler'] để đăng ký với PHP. Ví dụ:


6

Bạn có thể một framework chuyên về error handler và exception handler whoops

Bài Viết Liên Quan

Chủ Đề