Để kiểm tra phương thức có tồn tại không ta có hàm method_exists[], hàm này có đối số thứ nhất là đối tượng, đối số thứ hai là tên phương thức cần kiểm tra, kết quả trả về là true/false
Để kiểm tra thuộc tính có tồn tại không ta có hàm property_exists[], hàm này có đối số thứ nhất là đối tượng, đối số thứ hai là tên thuộc tính cần kiểm tra, kết quả trả về là true/false
Cần lưu ý rằng nếu sử dụng 2 hàm method_exists[] và property_exists[] bên ngoài lớp thì phương thức hoặc thuộc tính cần kiểm tra phải có phạm vi là public
Sau đây sẽ là ví dụ về cách sử dụng hàm is_a[] và instanceof
là một[]
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given6
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given7
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given8
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given9
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given7
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given1
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given2
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given8
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given4
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given5
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given70
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given71
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given72
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given73
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given74
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given75
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given76
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given75
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given5
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given79
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given80
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given81
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given82
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given83
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given84
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given80
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given86
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given82
Hàm is_a[] có 2 đối số là đối tượng và tên lớp muốn kiểm tra, tên lớp trong hàm không phân biệt kiểu viết hoa hay thường
dụ của
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given6
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given89
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given70
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given71
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given92
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given9
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given74
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given75
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given89
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given97
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given4
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given99____180_______171
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given72
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given73
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given74
instanceof có chức năng cũng như các đối tượng tự như function is_a[] chỉ có sự khác biệt, cụ thể là instanceof có thể kiểm tra được giao diện còn is_a[] thì không
bool[true] bool[true] bool[false] bool[true]1 cũng có thể được sử dụng để xác định xem một biến có phải là đối tượng khởi tạo của một lớp kế thừa từ lớp cha hay không
Ví dụ #2 Sử dụng
bool[true] bool[true] bool[false] bool[true]1 với các lớp kế thừa
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given0
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given1
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given2
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given3
Ví dụ trên sẽ xuất ra
Để kiểm tra xem một đối tượng có phải là một thể hiện của một lớp hay không, có thể sử dụng toán tử logic
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given4
Ví dụ #3 Sử dụng
bool[true] bool[true] bool[false] bool[true]1 để kiểm tra xem đối tượng có phải là một thể hiện của một lớp không
bool[true] bool[true] bool[false] bool[true]4
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given7
Ví dụ trên sẽ xuất ra
Cuối cùng,
bool[true] bool[true] bool[false] bool[true]1 cũng có thể được sử dụng để xác định xem một biến có phải là một đối tượng khởi tạo của một lớp thực hiện một giao diện hay không
Ví dụ #4 Sử dụng
bool[true] bool[true] bool[false] bool[true]1 với các giao diện
bool[true] bool[true] bool[false] bool[true]0
bool[true] bool[true] bool[false] bool[true]1
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given2
bool[true] bool[true] bool[false] bool[true]3
Ví dụ trên sẽ xuất ra
Mặc dù
bool[true] bool[true] bool[false] bool[true]1 thường được sử dụng với tên lớp theo nghĩa đen, nhưng nó cũng có thể được sử dụng với một đối tượng khác hoặc một biến chuỗi
Ví dụ #5 Sử dụng
bool[true] bool[true] bool[false] bool[true]1 với các biến khác
bool[true] bool[true] bool[false] bool[true]0
bool[true] bool[true] bool[false] bool[true]1
bool[true] bool[true] bool[false] bool[true]8
bool[true] bool[true] bool[false] bool[true]9
Ví dụ trên sẽ xuất ra
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given4
instanceof không đưa ra bất kỳ lỗi nào nếu biến đang được kiểm tra không phải là một đối tượng, nó chỉ trả về
bool[true] bool[true] bool[false] bool[true]10. Tuy nhiên, các hằng số không được phép trước PHP 7. 3. 0
Ví dụ #6 Sử dụng
bool[true] bool[true] bool[false] bool[true]1 để kiểm tra các biến khác
bool[true] bool[true] bool[false] bool[true]12
Ví dụ trên sẽ xuất ra
bool[false] bool[false] bool[false] PHP Fatal error: instanceof expects an object instance, constant given
Kể từ PHP 7. 3. 0, các hằng số được phép ở phía bên trái của toán tử
bool[true] bool[true] bool[false] bool[true]1
Ví dụ #7 Sử dụng
bool[true] bool[true] bool[false] bool[true]1 để kiểm tra hằng số
bool[true] bool[true] bool[false] bool[true]15
Đầu ra của ví dụ trên trong PHP 7. 3
Kể từ PHP 8. 0. 0,
bool[true] bool[true] bool[false] bool[true]1 hiện có thể được sử dụng với các biểu thức tùy ý. Biểu thức phải được đặt trong dấu ngoặc đơn và tạo ra một chuỗi