class Foo {
public function __isset($varname) {
echo "ZOMG! isset was called on my $varname!\n";
}
}
$foo = new Foo;
// bar will never get checked
var_dump(isset($foo->foo, $foo->bar));
// Output:
// ZOMG! isset was called on my foo!
// bool(false)
当用isset函数检测一个对象里的属性是否设置时会自动调用__isset()方法