以下php代码段将显示关联数组$ ar中每个元素的键和值。但是,不能以更优雅的方式完成,这样键和值指针就可以通过相同的机制来提升吗?我仍然希望它在foreach
循环中执行(或者其他一些不依赖于元素数量的知识)。
<?php
$ar = array("A" => "one", "B" => "two", "C" => "three");
foreach($ar as $a){
echo "key: ".key($ar)." value: ".$a."\n";
$ignore = next($ar);//separate key advancement - undesirable
}
?>
答案 0 :(得分:6)
请阅读manual。你也可以像使用密钥一样使用foreach:
$ar = array("A" => "one", "B" => "two", "C" => "three");
foreach ($ar as $key => $value) {
print $key . ' => ' . $value . PHP_EOL;
}
答案 1 :(得分:2)
<强>问题强> 您正在以
的形式使用 foreach 循环foreach($array as $element)
这遍历循环并在$ element
中给出当前迭代中元素的值<强>解决方案强>
还有另一种形式的 foreach 循环
foreach($array as $key => $value)
这遍历循环并在$ key变量中给出当前键,并在$ value变量中给出相应的值。
<强>代码强>
<?php
$ar = array("A" => "one", "B" => "two", "C" => "three");
foreach($ar as $key => $value){
echo "key: ".$key." value: ".$value."\n";
}
?>