我有一个类似以下示例代码的问题:
$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']
不起作用。有谁知道解决它的正确方法?
首先,您需要使用array_key_exists
来进入if
条件,然后您可以简单地使用它,例如
if(array_key_exists($code,$xx)){
echo $xx[$code][0];
}
或者可以简单地使用 isset
代替,例如
if(isset($xx[$code])){
echo $xx[$code][0];
}
你不应该在这里使用单引号,填充显示变量时,请使用不带引号或将其放在双"之间,请尝试$xx[$code]
或$xx["$code"]
使用 isset OR !empty 来检查数组中是否存在键。它还将检查键是否具有有效值。
if(isset($xx[$code])){
echo $xx[$code][0];
}
或
if(!empty($xx[$code])){
echo $xx[$code][0];
}
if($code==$xx['$code']){
echo $xx[$code][0]; //if i want get the value 'aa'
}
如果您使用 '$code'
则不会检查$code
的内容,因为''
将所有内容解释为字符串,并且不会在其中查找变量。
您也不能'code'
,因为code
只是您使用的变量的名称。