请大家看一下这个为什么不返回1啊? public $name; 才返回 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可是我在类中有说明啊?如下: private function __isset($nm) { return isset($this->nm); } name被设置为private,应该是不能直接引用的!但是你又设置了__get()这个方法了,就可以直接引用了。不信的话,你直接把$temp->name输出来,你会发现可以直接输出来。但是如果你将__get()方法删除之后,就不可以直接输出了。那么就不难理解为什么不可以了!isset在判断时,不会去调用__get()方法来对要判断的内容进行取值。所以在isset()中的$temp->name其实是去不到值的(因为name是private属性),所以不会返回1.但是如果将name属性设置为public,那么$temp->name就是可以直接访问的,故isset()返回1 构造函数已经把属性初始化了.肯定是isset返回1 php 有对象、类缓存吗?(对php有期待的进来) 请问下能否获得一段文字中,特定字前面的数字呢? Paypal 关于数据库的问题 刚学php大家提点意见!!! 十万火急!!考试系统 评分问题?叩谢了 [新手求助]ubuntu不能运行php文件 php连接access求助 关于ewebeditor怎么赋初始值? 问一查询语句 请问作过php生成excel的朋友一个问题,关于数值型数据的 打家看看。。有没得 逻辑错误。。
private function __isset($nm)
{
return isset($this->nm);
}
那么就不难理解为什么不可以了!isset在判断时,不会去调用__get()方法来对要判断的内容进行取值。所以在isset()中的$temp->name其实是去不到值的(因为name是private属性),所以不会返回1.但是如果将name属性设置为public,那么$temp->name就是可以直接访问的,故isset()返回1