Toán tử instanceof

Toán tử instanceof kiểm tra xem một đối tượng có phải là thể hiện của lớp được chỉ định hay là lớp con của nó không. Tham số đầu tiên nhận đối tượng, tham số thứ hai - tên lớp để kiểm tra. Trả về true nếu đối tượng thuộc về lớp hoặc false trong trường hợp ngược lại.

Cú pháp

php$object instanceof ClassName;

Ví dụ

Hãy kiểm tra xem đối tượng có phải là thể hiện của lớp MyClass không:

php<?php
  class MyClass {}
  $obj = new MyClass();
  var_dump($obj instanceof MyClass);
?>

Kết quả thực thi mã:

phptrue

Ví dụ

Hãy kiểm tra tính kế thừa của các lớp:

php<?php
  class ParentClass {}
  class ChildClass extends ParentClass {}
  
  $child = new ChildClass();
  var_dump($child instanceof ParentClass);
?>

Kết quả thực thi mã:

phptrue

Ví dụ

Hãy kiểm tra xem đối tượng không phải là thể hiện của lớp:

php<?php
  class A {}
  class B {}
  
  $a = new A();
  var_dump($a instanceof B);
?>

Kết quả thực thi mã:

phpfalse

Xem thêm

  • hàm get_class,
    hàm trả về tên lớp của đối tượng
  • hàm is_a,
    hàm kiểm tra đối tượng có thuộc về lớp không