【发布时间】:2011-04-26 17:09:29
【问题描述】:
我编写了一段代码来解析某些东西,动态地从一个数组的数组键中生成一个数组。这是来自一个表单,所以奇数键有一个值,这就是问题所在。
我的代码:
//array values are not needed in my code, just junk rather
$array = array('one_a'=>2, 'three_b', 'four_c', 'five_d'=>12);
$number = array();
$letter = array();
foreach($array as $element) {
$parts = explode("_", $element);
$number[] = $parts[0];
$letter[] = $parts[1];
}
print_r($number);
我不明白这怎么会出错,但是当foreach() 遍历关联数组时,它将“2”和“12”读取为单独的数组键!这会破坏我的 $explode 代码并引发错误,因为“2”中没有 _。
为什么关联数组会这样失败?我尝试明确定义as $element => $value,而不是使用$value(试图忽略它),但它会引发更多错误。
【问题讨论】:
标签: php foreach associative-array