这总是安全还是在某些情况下会导致错误?
if(isset($myVar) && $myVar->myProp !== 'error') {
...
答案 0 :(得分:1)
这似乎是动态定义属性的一种情况。尽管使用property_exists()
是可能的(也是有效的),但在类定义中实际强制执行该属性的存在会更好 :
Class someExample {
public $myProp = false; // now it will ALWAYS exist for any instance of someExample
}
答案 1 :(得分:0)
是的,如果该属性不存在,将导致错误。使用property_exists
$myVar = new myVar();
if( (isset($myVar) && property_exists('myVar', 'myProp'))
&& $myVar->myProp !== 'error' ) {
}