我无法弄清楚这里的问题是什么。我有一个带有预定义索引的关联数组,当我尝试访问其中一个索引时,我得到了未定义的索引错误,这里是代码,
if(!isset($score_value[$index])){
echo $index . ' isnt in array: <br/>';
print_r($score_value);
exit;
}
print_r($score_value[$index]);
输出是:
pi_cholesterol
不在数组中:
Array (
[pi_overall_health] => Array (
[4] => 4 [1] => 1 [2] => 4 [3] => 1
)
[pi_bmi] => Array (
[Healthy Weight] => 4 [Obese] => 3 [Overweight] => 3
)
[pi_cholesterol] => Array (
[Yes - its level is too high] => 6 [Yes - its level is ok] => 3 [No] => 1
)
)
正如您所看到的,pi_cholesterol
是数组中的索引但由于某种原因isset()
将其标记为不在数组中,如果我尝试使用array_key_exists()
,则会发生同样的事情。我可能会忽略一些简单的事情,但我无法看到它。
欢迎任何建议!
答案 0 :(得分:0)
抱歉我自己的愚蠢错误,$ index被覆盖在代码中的另一个地方,并附加了一个尾随的空格。
Mjh,axiac和rahul_m建议使用trim()帮我解决了这个问题。