我遇到类似以下示例代码的问题:
$code='100'; //$maybe $code='0' or $code='1' ... i just set a number as an sample
$xx=array(
'0'=>array(a,b,c),
'1'=>array(d,e,f),
........
'100'=>array(aa,bb,cc)
);
我想在数组中找到$ code:
if($code==$xx['$code']){
echo $xx['code'][0]; //if i want get the value 'aa'
}
但似乎$xx['$code']
无效。
有谁知道解决问题的正确方法?
答案 0 :(得分:2)
首先,您需要使用array_key_exists
来获取if
条件,然后您可以像使用
if(array_key_exists($code,$xx)){
echo $xx[$code][0];
}
或者可以简单地使用isset
代替
if(isset($xx[$code])){
echo $xx[$code][0];
}
答案 1 :(得分:0)
你不应该在这里使用单引号, 填写显示变量时,可以使用不带引号,也可以将其放在双“”试试{{1}}或{{1}}
之间答案 2 :(得分:0)
使用isset或!empty检查数组中是否存在密钥。它还会检查该密钥是否有效。
if(isset($xx[$code])){
echo $xx[$code][0];
}
OR
if(!empty($xx[$code])){
echo $xx[$code][0];
}
答案 3 :(得分:0)
if($code==$xx['$code']){
echo $xx[$code][0]; //if i want get the value 'aa'
}
如果您使用'$code'
,则不会检查$code
的内容,因为''
会将所有内容解释为字符串,并且不会在其中查找变量。
您也可以'code'
,因为code
只是您使用的变量的名称。