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

Getter và Setter trong PHP

Getter/Setter là phương thức truy xuất/gán giá trị cho thuộc tính private, che giấu triển khai nội bộ (encapsulation).

Ví dụ sai (truy cập trực tiếp private)

<?php
class Person {
    private $name;
}
$p = new Person();
echo $p->name; // Fatal Error: Cannot access private property
?>

Ví dụ đúng (dùng getter/setter)

<?php
class Person {
    private $name;
    public function setName($name) { $this->name = $name; }
    public function getName() { return 'Welcome ' . $this->name; }
}
$p = new Person();
$p->setName('Alex');
echo $p->getName(); // Welcome Alex
?>

Lợi ích

  • Kiểm soát truy cập (validation, format dữ liệu).
  • Cho phép logic bổ sung khi get/set (lazy load, log, event).
  • Thay đổi triển khai nội bộ mà không ảnh hưởng code bên ngoài.