共计 306 个字符,预计需要花费 1 分钟才能阅读完成。
最近在做自定义类,在设置属性时,一个类已经写了下面代码
public function __set($name, $value) {
$this->offsetSet($name, $value);
}
public function __get($name) {
return $this->offsetGet($name);
}
但是用 empty 判断时,竟然返回 true
经过网上查找资料,了解到 empty 触发的不是 __get 方法,而是触发 __set
加上下面的代码即可
public function __isset($name){
return $this->offsetExists($name);
}
补充一下,该类实现了 ArrayAccess
正文完