Sin*_*a V 4 php isset dynamic-properties
我有一个从数据库初始化的类的层次结构.我使用__get()和__set()与公共Item基类中的数组来支持不同数量的属性.一个派生自Item的类,UserProfile用于存储用户数据.我的数据库中有一个电话号码表,与用户表有一对多的关系,可以为一个用户存储多个电话号码.如果有移动电话,则UserProfile对象具有移动字段.家庭和企业也一样.如果不存在数字,则不存在任何属性.
当我想测试这些属性的存在时,就会出现问题.当我使用代码时
if (isset($clientData->home_phone))
{
$this->startElement('phone');
$this->writeAttribute('phone_number_type','home');
$this->writeRaw($clientData->home_phone);
$this->endElement();
}
Run Code Online (Sandbox Code Playgroud)
该函数始终返回false.我尝试使用括号告诉php先获取变量,但我只是出错了.我是否需要一个特殊的attributeExists()函数来模拟isset()的功能,还是有更简单的方法?
如何在没有某种错误的情况下测试动态属性的存在?