课程
/后端开发
/PHP
/PHP面向对象编程
去掉上一节的代码 33 34两行。 返回 为true时 isset和empty 返回都是 1 返回 为false 时, empty返回 1; 这是什么情况?
2016-03-18
源自:PHP面向对象编程 5-5
正在回答
empty,是在类里进行判断的。 isset进的是__isset(),
soyoung1994 提问者
__get方法如果不返回值的话empty()就一直返回true,在empty()调用时会先调用__isset再调用__get,__isset返回false,empty()就与之相反取true而不会调用__get,__isset返回true,就会调用__get,当有返回值时相当于true,所以结果为false,这相当于一个或关系。empty(false|true) = true|false = true,empty(true|true)=false|false=false。
举报
从容应对面试官的知识宝典,带你握面向对象的最重要的核心能力
1 回答代码显示顺序问题
1 回答如何测试自己编写的代码
1 回答为什么老师写的代码和底部发的源码不一样呢
1 回答输入的代码是一样的 报这个错误
1 回答老师代码执行结果的界面怎么弄的