Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> PHP

Interface trong PHP

Interface định nghĩa "hợp đồng" các phương thức public mà lớp triển khai phải có, không chứa code thực thi. Giúp đạt đa hình (polymorphism) và đa kế thừa (multiple inheritance) gián tiếp.

Ví dụ cơ bản

<?php
interface MyInterface {
    public function getName();
    public function getAge();
}
class MyClass implements MyInterface {
    public function getName() { echo "Tên: A
"; } public function getAge() { echo "Tuổi: 12"; } } $obj = new MyClass(); $obj->getName(); $obj->getAge(); ?>

Đặc điểm quan trọng

  • Chỉ chứa phương thức abstract (không body).
  • Tất cả phương thức public.
  • Lớp có thể implements nhiều interface (đa kế thừa).
  • Không chứa thuộc tính (property).
  • Interface có thể extends nhiều interface khác.

Ví dụ đa kế thừa qua interface

<?php
interface A { public function printData(); }
interface B { public function getData(); }
interface C extends A, B { public function addData(); }
class D implements C {
    public function printData() { echo "In dữ liệu"; }
    public function getData() { echo "Đọc dữ liệu"; }
    public function addData() { echo "Thêm dữ liệu"; }
}
$o = new D();
$o->printData(); $o->addData();
?>