我想获得一个对象$class->property
的属性,但我不知道我将尝试获得的属性的名称。
可能是$class->property_one
,也可能是class->property_two
。
一个或两个的信息存储在变量中,我们称之为$var
。
我得到的最接近的是${'$class->property_'.$var}
,但问题是PHP似乎认为我正在寻找一个名为“$class->property_xxx
”的变量,而实际上我想要来自$ object的$ property。 / p>
谢谢你的建议!
答案 0 :(得分:1)
您应该按照variable variables
。
你可以这样做:
$property = 'property_' . $var;
echo $obj->$property;
或者像这样所谓的curly syntax:
echo $obj->{'property_' . $var};
答案 1 :(得分:1)
$obj->{'property_' . $var};
答案 2 :(得分:1)
尝试类似
的内容$test_class = new stdClass();
$test_class->property_one = 'p_one';
$test_class->property_two = 'p_two';
$var = 'two';
echo $test_class->{"property_$var"};
打印'p_two'