<?php
/**
* __isset($name):用在类外部,检测一个不存在或者无权限访问的属性的时候,自动调用
* __unset($name):用在类外部,销毁一个不存在或者无权限访问的属性的时候,自动调用
*/
class Dome
{
//创建一个私有属性
private $name = 'peter';
private $sex = 'male';
public function __isset($name)
{
if ($name == 'sex') {
return false;
}
return isset($this->name);
}
//销毁name属性
public function __unset($name)
{
if ($name == '$sex') {
return false;//不允许销毁性别属性值
}
unset($this->name);
}
public function __get($name)
{
return $this->$name;
}
}
$obj = new Dome;
echo isset($obj->name) ? 'yes' : 'no';
echo '<hr>';
echo isset($obj->sex) ? 'yes' : 'no';
unset($obj->name);//销毁name属性
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号