是否可以简单地使用此代码...
echo $object->property1;
echo $object->property2;
echo $object->property3;
......用这样的东西,用eval?
for ($i=0; $i<10; $i++)
echo eval("$object->property".$i);
感谢。
答案 0 :(得分:5)
您可以动态创建属性名称,而无需使用eval()
:
$object = new stdClass();
$object->property1 = 10;
$object->property2 = 20;
$object->property3 = 30;
for ($i=1; $i<4; $i++)
echo $object->{"property".$i};
答案 1 :(得分:0)
好的$ object将超出eval函数的范围。您需要在eval字符串中定义对象。
答案 2 :(得分:0)
你不能做这样的事情:
for ($i=0; $i<10; $i++)
{
$tmp = "$object->property".$i
echo $$tmp;
}
我不确定动态变量是否在OOPhP中以这种方式应用,我看到即将到来的暗示: - )