本文带大家了解一下后端开发的相关知识,聊聊在php中数组指针都有几种操作函数。在php中, 主要有8种数组指针操作函数,详细内容如下:
1、current(),返回当前数组指针所指向的值。
2、next(),移动指针到下一位,返回该位的值。
3、prev(),移动指针到上一位,返回该位的值。
4、reset(),重置指针,指向第一个元素。
5、end()等。
本文适用于windows7系统、PHP7.1版、DELL G3电脑
数组指针函数有reset()、prev()、current()、pos()、next()、end()、key()、each()
其中reset()、prev()、current()、pos()、next()、end()都是与数组的值有关的函数,而key()只与数组键有关,each()可以获得数组的值和键
current()函数
参数是一个数组,引用传值,返回当前数组指针所指向的值,指针移动超出了数组的末尾,返回false,在数组为空的情况下返回false
数组的指针默认在数组的第一位
<?php
$arr = [11,22,33,44,55,66];
echo current($arr);
?>
pos()函数
current 的别名,用法一样。
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
?>
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
?>
end()函数
参数是一个数组,引用传值,将一个数组的内部指针移动到数组的最后一个元素所在的位置,然后返回最后一个元素的值,在数组为空的情况下返回false
<?php
$arr = [11,22,33,44,55,66];
echo current($arr)."<br>"; //指针指向11
end($arr); //指针指向11
echo current($arr)."<br>"; //指针指向66
?>
key()函数
参数是一个数组,引用传值,返回当前指针所指向的元素的键,当指针所指的那一位没有元素返回null,空数组返回null
<?php
$arr = [11,22,33,44,55,66];
var_dump($arr);
echo current($arr)."<br>"; //当前指针指向11
echo key($arr)."<br>"; //当前元素的键名
?>
each()函数
参数是一个数组,引用传值,返回当前指针所指的元素的值和键,并且移动指针到下一位
<?php
$arr = [11,22,33,44,55,66];
var_dump($arr);
echo current($arr)."<br>"; //指针指向11
next($arr); //指针指向22
echo current($arr)."<br>"; //指针指向22
$item = each($arr); //指针指向33
print_r($item); //指针指向33
echo current($arr)."<br>"; //指针指向33
?>
我来说两句