数组的内部指针是数组内部的组织机制,指向一个数组中的某个元素。默认是指向数组中第一个元素通过移动或改变指针的位置,可以访问数组中的任意元素。对于数组指针的控制PHP提供了以下几个内建函数可以利用。

★current():取得目前指针位置的内容资料。
★key():读取目前指针所指向资料的索引值(键值)。
★next():将数组中的内部指针移动到下一个单元。
★prev():将数组的内部指针倒回一位。
★end():将数组的内部指针指向最后一个元素。
★reset():将目前指针无条件移至第一个索引位置。

这些函数的参数都是只有一个,就是要操作的数组本身。在下面的示例中,将使用这些数组指针函数控制数组中元素的读取顺序。代码如下所示:

<?php
$contact = array(
"ID" => 1,
"姓名" => "高某",
"公司" => "A公司",
"地址" => "北京市",
"电话" => "(010)98765432",
"EMAIL" => "gao@brophp.com",
);
 
//数组刚声明时,数组指针在数组中第一个元素位置
echo '第一个元素:'.key($contact).' => '.current($contact).'<br>'; //第一个元素
echo '第一个元素:'.key($contact).' => '.current($contact).'<br>'; //数组指针没动
 
next($contact);
next($contact);
echo '第三个元素:'.key($contact).' => '.current($contact).'<br>'; //第三个元素
 
end($contact);
echo '最后一个元素:'.key($contact).' => '.current($contact).'<br>';
 
prev($contact);
echo '倒数第二个元素:'.key($contact).' => '.current($contact).'<br>';
 
reset($contact);
echo '又回到了第一个元素:'.key($contact).' => '.current($contact).'<br>';
?>

在上例中通过使用指针控制函数next()、prev()、end()和reset()随意在数组中移动指针位置,再使用key()和current()函数获取数组中当前位置的键和值。

转自:http://www.jb51.net/article/57561.htm

PHP中使用数组指针函数操作数组示例的更多相关文章

  1. 5_PHP数组_3_数组处理函数及其应用_3_数组指针函数

    以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. 数组指针函数 1. key() 函数 程序: <?php $interests[2] = "mus ...

  2. PHP的七个数组指针函数

    1. PHP的七个数组指针函数 函数 描述 reset() 将一个数组的内部指针重置到首位,并返回第一个元素的值 end() 将一个数组的内部指针移动到数组的最后一个元素所在的位置,并返回最后一个元素 ...

  3. php数组指针函数

    数组指针函数有reset(),prev(),current(),next(),end(),key(),each() 其中reset(),prev(),current(),next(),end(),都是 ...

  4. C++笔记-数组指针/二维数组转换指针

    参考资料: 1. 作者 BensonLaur  :https://www.cnblogs.com/BensonLaur/p/6367077.html 2. https://blog.csdn.net/ ...

  5. Filter 数组过滤函数精解示例

    '************************************************************************* '**模 块 名:Filter 数组过滤函数精解示 ...

  6. 3205: 数组做函数参数--数组元素求和1--C语言

    3205: 数组做函数参数--数组元素求和1--C语言 时间限制: 1 Sec  内存限制: 128 MB提交: 178  解决: 139[提交][状态][讨论版][命题人:smallgyy] 题目描 ...

  7. C语言指针系列 - 一级指针.一维数组,二级指针,二维数组,指针数组,数组指针,函数指针,指针函数

    1. 数组名 C语言中的数组名是一个特殊的存在, 从本质上来讲, 数组名是一个地址, 我们可以打印一个指针的值,和打印一个数组的值来观察出这个本质: int nArray[10] ={ 0 }; in ...

  8. c语言中数组,指针数组,数组指针,二维数组指针

    1.数组和指针 ] = {,,,,};// 定义数组 // 1. 指针和数组的关系 int * pa = array; pa = array; // p[0] == *(p+0) == array[0 ...

  9. C语言数组指针(指向数组的指针)

    注意:数组指针的定义,与指针数组的区别 转载:http://c.biancheng.net/cpp/biancheng/view/162.html 指向多维数组元素的指针变量 ① 指向数组元素的指针变 ...

随机推荐

  1. CSS浮动与清浮动

    浮动 ( float css属性) float : left right Elements are floated horizontally, this means that an element c ...

  2. javascript异步加载的三种解决方案

    默认情况javascript是同步加载的,也就是javascript的加载时阻塞的,后面的元素要等待javascript加载完毕后才能进行再加载,对于一些意义不是很大的javascript,如果放在页 ...

  3. 使用工具追踪Entity Framework生成的SQL

    学习entity framework期间收集的文章,转自http://www.cnblogs.com/hiteddy/archive/2011/10/01/Difference_among_IQuer ...

  4. datagridview自动增加行高度和显示全部内容

    this.dataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCellsExceptHeaders;  //自动调动dat ...

  5. node.js中使用node-schedule实现定时任务

    摘要:有时我们需要在每天的固定时间执行某个脚本,或者在某个固定时间执行某个任务.NodeJS中的 node-schedule 可以很好的实现定时任务. 1.安装 npm install node-sc ...

  6. VCL 如何加载Gif图片和Png图片

    加上头文件#include <Vcl.Imaging.GIFImg.hpp> #include <Vcl.Imaging.pngimage.hpp> Image1->Pi ...

  7. .net开发之我见,or实现 最简 优化法。knock out type convert 与我之简化orm的实现原理及实现细则,最简化开发法

    现在的.net or构架,大家认同的各种大大小小,ef,subsonic,nhibernate,甚至小一些的petapoco这种,但用过的人我想他们考虑的是比较多. 小一些的Petapoco也有几千行 ...

  8. 关于C语言链表的学习

    今天讲了一种非传统型的链表.听得不是太好. 到数据结构那一部分的时候.一定要好好听听.

  9. C#写好的类库dll怎么在别人调用的时候也能看到注释?

    菜单 Project -> 'xxxx' Properties -> Build -> Output -> 勾上 XML Documentation file

  10. 怎么查看windows2003中隐藏用户

    在命令模式下删除1.你在MS-dos下先输入net user 看有那些用户, 注意第一步看不出隐藏的用户 2.然后在输入net localgroup administrators 或者 net loc ...