0

在下面的循环中,我想在循环$value[0]的每次传递中递增。因此,如果$count = 2循环将运行两次并输出$key . " " . $value[0]and $key . " " . $value[1]

现在,我的循环输出$key . " " . $value[0]了两次。我做错了什么?

$count = count($updates['positionTitle']);

for($i = 1; $i<=$count; $i++){
    foreach($updates as $key => $value){
        if(!is_array($value))
           echo $key . " " . $value . "<br/>";
         else 
           echo $key . " " . $value[0]++ . "<br/>";
    }
}
4

2 回答 2

1

您需要存储当前索引是什么。不过,我实际上不确定您在说什么循环。我假设它是外部 for 循环。我仍然认为这是坏的,但根据你的评论,这就是你想要的。

$count = count($updates['positionTitle']);
$idx = 0;

for($i = 1; $i<=$count; $i++){
    foreach($updates as $key => $value){
        if(!is_array($value))
           echo $key . " " . $value . "<br/>";
         else 
           echo $key . " " . $value[$idx] . "<br/>";
    }
    $idx++;
}
于 2013-03-14T20:52:25.823 回答
0

改变:

foreach($updates as $key => $value){

至:

foreach($updates as $key => &$value){
于 2013-03-14T21:06:42.180 回答