php数组指针函数
数组指针函数有reset(),prev(),current(),next(),end(),key(),each()
其中reset(),prev(),current(),next(),end(),都是只与数组的值有关的函数,key()只与数组键,有关的函数,each()可以获得数组的值和键
reset()函数,参数是一个数组,引用传值,将一个数组的内部指针重置到首位,也就是数组的第一个元素所在的位置,然后返回第一个元素的值,在数组为空的情况下返回false
1 $arr = [ 1, 2 ]; 2 var_dump( reset( $arr ) ); 3 $arr = [ ]; 4 var_dump( reset( $arr ) ); 5 // int(1) 6 // bool(false)
end()函数,参数是一个数组,引用传值,将一个数组的内部指针移动到数组的最后一个元素所在的位置,然后返回最后一个元素的值,在数组为空的情况下返回false
1 $arr = [ 1, 2 ]; 2 var_dump( end( $arr ) ); 3 $arr = [ ]; 4 var_dump( end( $arr ) ); 5 // int(2) 6 // bool(false)
current()函数,参数是一个数组,引用传值,返回当前数组指针所指向的值,指针移动超出了数组的末尾,返回false,在数组为空的情况下返回false
数组的指针默认在数组的第一位
1 $arr = [ 1, 2 ]; 2 var_dump( current( $arr ) ); 3 $arr = [ ]; 4 var_dump( current( $arr ) ); 5 // int(1) 6 // bool(false)
next()函数,参数是一个数组,引用传值,移动数组指针到下一位,返回该位的值,当该位没有元素时返回false,空数组也会返回false
1 $arr = [ 1, 2 ]; 2 var_dump( next( $arr ) ); 3 $arr = [ ]; 4 var_dump( next( $arr ) ); 5 // int(2) 6 // bool(false)
prev()函数,参数是一个数组,引用传值,移动数组指针到上一位,返回该位的值,当该位没有元素时返回false,空数组也会返回false
1 $arr = [ 1, 2 ]; 2 var_dump( prev( $arr ) ); 3 $arr = [ ]; 4 var_dump( prev( $arr ) ); 5 // int(2) 6 // bool(false)
key()函数,参数是一个数组,引用传值,返回当前指针所指向的元素的键,当指针所指的那一位没有元素返回null,空数组返回null
1 $arr = [ 1, 2 ]; 2 prev( $arr ); 3 var_dump( key( $arr ) ); 4 $arr = [ ]; 5 var_dump( key( $arr ) ); 6 // int(2) 7 // bool(false)
each()函数,参数是一个数组,引用传值,返回当前指针所指的元素的值和键,并且移动指针到下一位
php7.2之后极度不鼓励使用这个函数
Warning
This function has been DEPRECATED as of PHP 7.2.0. Relying on this function is highly discouraged
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库