Ngoại lệ PHP
Học Php bắt đầu với Hello, World
Tự làm quen với các bài tập và gửi đoạn code đầu tiên của bạn bằng cách hoàn thành bài đầu tiên "Hello, World!".
Luyện tập
Ngoại lệ là gì?
  • Ngoại lệ là một đố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 nó gặp dữ liệu mà nó không thể sử dụng.
Throw exceptions
  • Câu throw lệnh cho phép một hàm hoặc phương thức do người dùng định nghĩa đưa ra một ngoại lệ. Khi một ngoại lệ được throw, mã theo sau nó sẽ không được thực thi.
  • Nếu một ngoại lệ không bị bắt, một lỗi nghiêm trọng sẽ xảy ra với thông báo "Ngoại lệ chưa được bắt".
  • Hãy thử throw một ngoại lệ mà không bắt nó:
Ví dụ
Compiler
Câu lệnh try...catch

Để tránh lỗi từ ví dụ trên, chúng ta có thể sử dụng try...catch để bắt ngoại lệ và tiếp tục quá trình.

Cú pháp

try {
  code that can throw exceptions
catch(Exception $e) {
  code that runs when an exception is caught
}
Ví dụ
Compiler
Câu lệnh try...catch...finally

Câu lệnh try...catch...finally có thể được sử dụng để bắt ngoại lệ. Mã trong khối finally sẽ luôn chạy bất kể ngoại lệ có bị bắt hay không. Nếu finally có, catch khối là tùy chọn.

Cú pháp

try {
  code that can throw exceptions
catch(Exception $e) {
  code that runs when an exception is caught
finally {
  code that always runs regardless of whether an exception was caught
}

 

Ví dụ
Compiler
Ví dụ
Compiler
Đối tượng ngoại lệ

Đối tượng ngoại lệ chứa thông tin về lỗi hoặc hành vi không mong muốn mà chức năng gặp phải.

Cú pháp

new Exception(message, code, previous)

Giá trị tham số

Biến Mô tả
message Không bắt buộc. Một chuỗi mô tả lý do tại sao ngoại lệ được đưa ra
code Không bắt buộc. Một số nguyên có thể được sử dụng để dễ dàng phân biệt ngoại lệ này với các ngoại lệ khác cùng loại
previous Không bắt buộc. Nếu ngoại lệ này được ném vào khối bắt của một ngoại lệ khác, bạn nên chuyển ngoại lệ đó vào tham số này

Phương thức

Khi bắt một ngoại lệ, bảng sau hiển thị một số phương pháp có thể được sử dụng để lấy thông tin về ngoại lệ:

Method Description
getMessage() Trả về một chuỗi mô tả lý do tại sao ngoại lệ được ném ra
getPrevious() Nếu ngoại lệ này được kích hoạt bởi một ngoại lệ khác, phương thức này sẽ trả về ngoại lệ trước đó. Nếu không, nó sẽ trả về null
getCode() Trả về exception code
getFile() Trả về đường dẫn đầy đủ của tệp mà ngoại lệ đã được đưa ra
getLine() Trả về số dòng của dòng mã đã ném ngoại lệ
Ví dụ
Compiler
Một số bài viết liên quan
Devsne VN 5053 lượt xem

PHP Array Functions With Example

Devsne VN 4145 lượt xem

Lập trình hướng đối tượng OOP với PHP

Devsne VN 2779 lượt xem

Lập trình hướng đối tượng trong PHP - Phần 3

Devsne VN 10119 lượt xem

2.0 Biến trong PHP

Devsne VN 4974 lượt xem

Bài toán rút tiền từ ATM - PHP

Devsne VN 7048 lượt xem

Phân biệt giao diện interface với lớp trừu tượng abstract class trong php

Devsne VN 2012 lượt xem

[Lession 2 - PHP] Sử dụng vòng lặp for lồng nhau trong PHP vẽ hình tam giác bằng kí tự *

Devsne VN 3549 lượt xem

The Architecture of PHP (Part 2)

Devsne VN 5720 lượt xem

PHP Type Juggling

Devsne VN 2765 lượt xem

Vẽ tam giác sao bằng PHP | Bài tập PHP có lời giải

Mục lục
Ngoại lệ là gì?
Throw exceptions
Ví dụ
Câu lệnh try...catch
Ví dụ
Câu lệnh try...catch...finally
Ví dụ
Ví dụ
Đối tượng ngoại lệ
Ví dụ