php数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位_php技巧

来源:脚本之家  责任编辑:小易  

PHP 的foreach()操作原始数组的一个拷贝,如果需要移动指针,使用 while 结构加上 each()来实现。示例:arr=array('a','b','c','d','e');reset($arr);while(list($k,$v)=each($arr)){当前指针已经被指向了下一位curr=current($arr);echo"{$k}=>{$v}-{$curr}\\n;}www.zgxue.com防采集请勿采集本网。

each()定义和用法

each() 函数生成一个由数组当前内部指针所指向的元素的键名和键值组成的数组,并把内部指针向前移动。

一开始没看出你的问题来,差点答错了。你的问题是出现在&$value上,而不是数组的移动。你foreach最后的$value 是$name['name4']的引用,while的循环中,不断变化着$name['name4']的值,你可以在while循环最后每次都打印完整数组看出效果。关键点

返回的数组中包括的四个元素:键名为 0,1,key 和 value。单元 0 和 key 包含有数组单元的键名,1 和 value 包含有数据。

你可以使用for循环自己写就可以了。 需要移动几位就是循环几次调用next就可以了

如果内部指针越过了数组范围,本函数将返回 FALSE。

那不是死循环吗

语法

each(array)参数 描述

执行一次mysql_fetch_array,取出这一行的数据,将指针移到下一行; 所以再执行一次mysql_fetch_array,取出的就是第二行的数据。

array 必需。规定要使用的数组。

貌似没有··你可以使用关键字self 这个使用方法就是self::(双冒号)成员属性或者方法···跟this差不多··使用它的时候 对象不需要被实例化·就可以用了··

例子 1

复制代码 代码如下:

<?php

$people = array("Peter", "Joe", "Glenn", "Cleveland");

print_r (each($people));

?>

输出:

Array ( [1] => Peter [value] => Peter [0] => 0 [key] => 0 )例子 2

each() 经常和 list() 结合使用来遍历数组。本例与上例类似,不过循环输出了整个数组:

复制代码 代码如下:

<?php

$people = array("Peter", "Joe", "Glenn", "Cleveland");

reset($people);

while (list($key, $val) = each($people))

{

echo "$key => $val<br />";

}

?>

输出:

0 => Peter

1 => Joe

2 => Glenn

3 => Cleveland例子解释

因为将一个数组赋值给另一个数组时会重置原来的数组指针,因此在上例中如果我们在循环内部将 $people 赋给了另一个变量的话将会导致无限循环。

数组的内部位置指针是用于在数组内一项bai一项的元素操作。体现在这几个函数上reset() - 把内部位置指针指向数组的首个元du素zhi。end() - 把内部dao位置指针指向数组的最后一个元素版。current()-返回内部位置指针的当前位置上的元素的值部分each() - 返回内部位置指针的当前位置上的元素的键和值prev() - 指针指向上一个元素并返回该权元素的值next() - 指针指向下一个元素并返回该元素的值内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • php中使用数组指针函数操作数组示例
  • php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
  • php 数组的指针操作实现代码
  • php数组函数序列之prev() - 移动数组内部指针到上一个元素的位置,并返回该元素值
  • php数组指针操作详解
  • php数组函数序列之end() - 移动数组内部指针到最后一个元素,并返回该元素的值
  • php reset() 函数指针指向数组中的第一个元素并输出实例代码
  • php数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
  • 简单了解php编程中数组的指针的使用
  • php数组指针函数功能及用法示例
  • php文件包含的几种方式总结
  • php使用自定义key实现对数据加密解密的方法
  • php上传图片获取路径及给表单字段赋值的方法
  • php swoole中使用task进程异步的处理耗时任务应用案例分析
  • php实现对文件锁进行加锁、解锁操作的方法
  • php实现生成pdf文件的方法示例【基于fpdf类库】
  • php 无限分类的树类代码
  • php获取youku视频真实flv文件地址的方法
  • php使用redis消息队列发布微博的方法示例
  • linux系统下使用xhprof和xhgui分析php运行性能
  • 什么是php数组内部指针
  • php数组指针如何移动到指定单元?
  • 在php中哪些是数组指针操作函数
  • php数组指针如何移动到指定单元
  • php数组指针的问题,while each遍历
  • PHP 数组内部指针移动一位用next( ) 向前移动多位...
  • php中用 foreach遍历一个数组到最后是怎么让指针指...
  • php 中的mysql_fetch_array指针怎么用
  • php指向函数自身的指针
  • php如何移动数组内部指针
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全php基础php技巧php实例php文摘php模板首页php编程php技巧php中使用数组指针函数操作数组示例php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值php 数组的指针操作实现代码php数组函数序列之prev() - 移动数组内部指针到上一个元素的位置,并返回该元素值php数组指针操作详解php数组函数序列之end() - 移动数组内部指针到最后一个元素,并返回该元素的值php reset() 函数指针指向数组中的第一个元素并输出实例代码php数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)简单了解php编程中数组的指针的使用php数组指针函数功能及用法示例php文件包含的几种方式总结php使用自定义key实现对数据加密解密的方法php上传图片获取路径及给表单字段赋值的方法php swoole中使用task进程异步的处理耗时任务应用案例分析php实现对文件锁进行加锁、解锁操作的方法php实现生成pdf文件的方法示例【基于fpdf类库】php 无限分类的树类代码php获取youku视频真实flv文件地址的方法php使用redis消息队列发布微博的方法示例linux系统下使用xhprof和xhgui分析php运行性能php中json_decode()和json_encodphp 数组和字符串互相转换实现方php中使用curl实现get和post请求php中iconv函数使用方法php日期转时间戳,指定日期转换成php 页面跳转到另一个页面的多种php中文处理 中文字符串截取(mb_php下intval()和(int)转换使用与利用phpexcel实现excel数据的导入phpmyadmin 配置文件详解(配置)php数组array类常见操作示例php中访问修饰符的知识点总结php trim 去除空字符的定义与语法介绍使用gdb调试php代码,解决php代码死循环问php escape url编码php+mysqli事务控制实现银行转账实例php中的数组处理函数实例总结apache的acceptpathinfo指令使用介绍表单复选框向php传输数据的代码php tpl模板引擎定义与使用示例
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved