可变密钥名称

问题描述:

我可以在不使用临时变量的情况下检查变量密钥吗?可变密钥名称

$var = 'blabla'; 
$key = "{$var}_abc"; 

if(isset($someobject->$key))... 

使用数组,你可以做到这一点... $阵列[ “{$ VAR} _abc”]

是。您可以使用包含表达式的大括号来生成字符串,其中该字符串是要检查的属性的名称。

$someobject->{"{$var}_abc"} 
$someobject->{$var."_abc"} 
+0

TX我心底占据第一位 – thelolcat 2012-03-14 22:33:56

是,尽量封闭在括号

编辑变量:不paranthesis,背带..

您可以使用各地的成员名字括号:

if (isset($someobject->{$var.'_abc'})) 

可以使用串联像$array[$var."_abc"]

+0

笑我知道:))) – thelolcat 2012-03-14 22:33:26

你可以做到这一点,利用property_exists()方法

if(property_exists($object, $var."_abc")) { 
// do stuff 
}