php数组指针用于操作数组。数组指针是数组内部的组织机制,每个数组都有一个内部的指针指向它“当前的”单元(元素),这个指针最初指向的是当前数组中的第一个单元;通过移动或改变数组指针的位置,可以访问数组中的任意元素。对于数组指针的控制PHP提供了多个内置函数:current()、pos()、key()、next()、prev()、end()、reset()。
本教程操作环境:windows7系统、PHP8版、DELL G3电脑
php数组指针用于操作数组。
在php中,数组指针是数组内部的组织机制,指向一个数组中的某个元素。
每个数组都有一个内部的指针指向它“当前的”单元(元素),这个指针最初指向的是当前数组中的第一个单元。
通过移动或改变指针的位置,可以访问数组中的任意元素。对于数组指针的控制PHP提供了以下几个内置函数可以利用。
current():返回数组的当前元素
pos():current 的别名,用法一样。
key():读取当前指针所指向资料的索引值(键值)。
next():将数组中的内部指针移动到下一个单元。
prev():将数组的内部指针倒回一位。
end():将数组的内部指针指向最后一个元素。
reset():将目前指针无条件移至第一个索引位置。
这些函数的参数都是只有一个,就是要操作的数组本身。
在下面的示例中,将使用这些数组指针函数控制数组中元素的读取顺序。代码如下所示:
<?php header('content-type:text/html;charset=utf-8'); $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>'; ?>
下面一个个来介绍一下。
current()函数
参数是一个数组,引用传值,返回当前数组指针所指向的值,指针移动超出了数组的末尾,返回false,在数组为空的情况下返回false
数组的指针默认在数组的第一位
<?php $arr = [11,22,33,44,55,66]; echo current($arr); ?>
key()函数
参数是一个数组,引用传值,返回当前指针所指向的元素的键,当指针所指的那一位没有元素返回null,空数组返回null
93e8c852f52e4d220f60e10c5b36131d"; //当前指针指向11 echo key($arr)."0c6dc11e160d3b678d68754cc175188a"; //当前元素的键名 ?>
next()函数
参数是一个数组,引用传值,移动数组指针到下一位,返回该位的值,当该位没有元素时返回false,空数组也会返回false
<?php $arr = [11,22,33,44,55,66]; echo current($arr)."<br>"; //指针指向11 next($arr); //指针指向22 echo current($arr)."<br>"; //指针指向22 next($arr); //指针指向33 next($arr); //指针指向44 echo current($arr)."<br>"; //指针指向44 ?>
prev()函数
参数是一个数组,引用传值,移动数组指针到上一位,返回该位的值,当该位没有元素时返回false,空数组也会返回false
<?php $arr = [11,22,33,44,55,66]; echo current($arr)."<br>"; //指针指向11 next($arr); //指针指向22 next($arr); //指针指向33 echo current($arr)."<br>"; //指针指向33 prev($arr); //指针指向22 echo current($arr)."<br>"; //指针指向22 ?>
end()函数
参数是一个数组,引用传值,将一个数组的内部指针移动到数组的最后一个元素所在的位置,然后返回最后一个元素的值,在数组为空的情况下返回false
<?php $arr = [11,22,33,44,55,66]; echo current($arr)."<br>"; //指针指向11 end($arr); //指针指向11 echo current($arr)."<br>"; //指针指向66 ?>
reset()函数
参数是一个数组,引用传值,将一个数组的内部指针重置到首位,也就是数组的第一个元素所在的位置,然后返回第一个元素的值,在数组为空的情况下返回false
<?php $arr = [11,22,33,44,55,66]; echo current($arr)."<br>"; //指针指向11 next($arr); //指针指向22 next($arr); //指针指向33 echo current($arr)."<br>"; //指针指向33 reset($arr); //指针指向11 echo current($arr)."<br>"; //指针指向11 ?>
推荐学习:《PHP视频教程》
以上是php数组指针什么用的详细内容。更多信息请关注PHP中文网其他相关文章!