351 of 410 menu

Phương thức __unset

Phương thức __unset là một trong những phương thức ma thuật trong PHP. Nó được tự động gọi khi cố gắng xóa một thuộc tính không tồn tại hoặc không thể truy cập của đối tượng bằng hàm unset. Phương thức nhận một tham số - tên của thuộc tính đang cố gắng xóa.

Cú pháp

public function __unset(string $name): void

Ví dụ

Tạo một lớp với phương thức ma thuật __unset và thử xóa một thuộc tính không tồn tại:

<?php class MyClass { private $data = ['a' => 1, 'b' => 2]; public function __unset($name) { echo "Đang cố gắng xóa '$name'\n"; unset($this->data[$name]); } } $obj = new MyClass(); unset($obj->a); unset($obj->c); ?>

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

Đang cố gắng xóa 'a' Đang cố gắng xóa 'c'

Ví dụ

Sử dụng __unset để kiểm soát quyền truy cập vào các thuộc tính riêng tư:

<?php class User { private $email = 'user@example.com'; public function __unset($name) { if ($name === 'email') { throw new Exception("Không thể xóa thuộc tính riêng tư 'email'"); } } } $user = new User(); unset($user->email); ?>

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

Exception: Không thể xóa thuộc tính riêng tư 'email'

Xem thêm

  • phương thức __set,
    được gọi khi ghi vào thuộc tính không thể truy cập
  • phương thức __get,
    được gọi khi đọc thuộc tính không thể truy cập
  • phương thức __isset,
    được gọi khi kiểm tra sự tồn tại của thuộc tính không thể truy cập
Tiếng Việt
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối