希望我以一种合理的方式提出这个问题。尽管我可能没有正确表达我的搜索字词,但找不到任何答案。
在我的Drupal 7定制模块中,我能够使用以下对象运算符(箭头->
)语法成功地从分类法数组中获取数据
$term = taxonomy_term_load($taxonomy_tid);
$description = $term->description;
echo $description;
如何使“描述”标签本身成为变量?设置为:
$term = taxonomy_term_load($taxonomy_tid);
$description_name_from_array = 'description';
$description = $term->????;
echo $description;
不起作用的东西:
$term->$description_name_from_array
$term->[$description_name_from_array]
$term->&$description_name_from_array
答案 0 :(得分:0)
大括号,但是您的第一次尝试应该可以访问说明。从对象访问简单变量属性的正确语法是
$obj->$property
也可以使用变量属性名称访问类属性。 变量属性名称将在以下范围内解析 拨打电话。例如,如果您有一个这样的表达式 如
$foo->$bar
,则将检查本地范围的$bar
及其 值将用作$foo
属性的名称。这也是 如果$bar
是数组访问,则为true。
将变量用大括号括起来以清楚地界定属性名称是更安全的:
$obj->{$property}
必需:
$obj->${$properties[0]}
$obj->{$a . $b}
$obj->{CONSTANT_NAME}
请参见PHP的Variable Variables