foreach ($array as $key=>$value)

foreach ($array as $key=>$value)

 

{
……
}

 

 

假设$array = array('first'=>'ibm','second'=>'hp');

 

现在我们模拟PHP服务用foreach对$array进行遍历:
foreach ($array as $key=>$value)
{
echo $key.'=>'.$value;
}

第一次循环,$key = 'first',$value = 'ibm',

这个时候,实际foreach对$array执行了一个我们看不见的操作:next($array),将数组指针向前(这里的“向前”跟PHP手册相同,不是我们通常所理解的“向前”)移一。然后echo语句输出"first=>ibm"。

第二次循环,首先会判断数组$array的当前指针是否已经到了数组的末尾,如果是,结束循环,否则进入第二次循环。

当然这样的判断在进入第一次循环的时候也会有,如果$array是一个空数组,那么就会直接执行循环下面的语句。此时,$key = 'second','value' = 'hp',next($array)后,输出"second=>hp"。然后进行判断,数组指针已经到达末尾,执行下面的语句

posted @ 2010-09-13 16:09  郭振斌  阅读(11257)  评论(0编辑  收藏  举报