PHP中reset(array)函数解决each(array)循环无结果

来源:互联网 发布:win7触控板手势软件 编辑:程序博客网 时间:2024/05/31 06:22
<?php$user = array('name' =>"zhangsan" ,                'age' =>20,                'country'=>"China" );foreach ($user as $key => $value) {    echo "$key : $value "."</br>";}while ($element = each($user)) {    echo $element['key'];    echo " -- ";    echo $element['value'];    echo "</br>";} ?>

运行的结果

运行结构一

运行的结果并不是猜想的那样

each() 函数返回当前元素的键名和键值,并将内部指针向前移动。该元素的键名和键值会被返回带有四个元素的数组中。两个元素(1 和 Value)包含键值,两个元素(0 和 Key)包含键名。reset(array)函数将内部指针指向数组中的第一个元素,并输出。将当前元素重新设置到数组开始。

修改后的代码

<?php$user = array('name' =>"zhangsan" ,                'age' =>20,                'country'=>"China" );foreach ($user as $key => $value) {    echo "$key : $value "."</br>";}reset($user);while ($element = each($user)) {    echo $element['key'];    echo " -- ";    echo $element['value'];    echo "</br>";} ?>

运行结果
运行结果二

1 0
原创粉丝点击