このコードを単純にすることは可能ですか...
echo $object->property1;
echo $object->property2;
echo $object->property3;
...このようなもので、evalで?
for ($i=0; $i<10; $i++)
echo eval("$object->property".$i);
ありがとう。
を使用せずにプロパティ名を動的に作成できますeval()
。
$object = new stdClass();
$object->property1 = 10;
$object->property2 = 20;
$object->property3 = 30;
for ($i=1; $i<4; $i++)
echo $object->{"property".$i};
$object は eval 関数の範囲外になります。eval 文字列内でオブジェクトを定義する必要があります。
このようなことはできませんか:
for ($i=0; $i<10; $i++)
{
$tmp = "$object->property".$i
echo $$tmp;
}
OOPhPで動的変数がそのように適用されているかどうかはわかりません.反対票が来るのがわかります:-)