PHP获取数组的键与值方法小结


Posted in PHP onJune 13, 2015

本文实例讲述了PHP获取数组的键与值方法。分享给大家供大家参考。具体如下:

使用数组的过程中经常要遍历数组。通常需要遍历数组并获得各个键或值(或者同时获得键和值),所以毫不奇怪,PHP为此提供了一些函数来满足需求。许多函数能完成两项任务,不仅能获取当前指针位置的键或值,还能将指针移向下一个适当的位置。

获取当前数组键 key()

key()函数返回input_array中当前指针所在位置的键。其形式如下:

mixed key(array array)

下面的例子通过迭代处理数组并移动指针来输出$fruits数组的键:

$fruits = array("apple"=>"red", "banana"=>"yellow");
while ($key = key($fruits)) {
   printf("%s <br />", $key);
   next($fruits);
}
// apple 
// banana

注意,每次调用key()时不会移动指针。为此需要使用next()函数,这个函数的唯一作用就是完成推进指针的任务。

获取当前数组值 current()

current()函数返回数组中当前指针所在位置的数组值。其形式如下:

mixed current(array array)

下面修改前面的例子,这一次我们要获取数组值:

$fruits = array("apple"=>"red", "banana"=>"yellow");
while ($fruit = current($fruits)) {
   printf("%s <br />", $fruit);
   next($fruits);
}
// red 
// yellow

获取当前数组键和值 each()

each()函数返回input_array的当前键/值对,并将指针推进一个位置。其形式如下:

array each(array array)

返回的数组包含四个键,键0和key包含键名,而键1和value包含相应的数据。如果执行each()前指针位于数组末尾,则返回false。

$fruits = array("apple", "banana", "orange", "pear");
print_r ( each($fruits) );
// Array ( [1] => apple [value] => apple [0] => 0 [key] => 0 )

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

$fruits = array("apple", "banana", "orange", "pear");
reset($fruits);
while (list($key, $val) = each($fruits))
{
   echo "$key => $val<br />";
}
// 0 => apple
// 1 => banana
// 2 => orange
// 3 => pear

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

这就完成了数组的遍历。

希望本文所述对大家的jQuery程序设计有所帮助。

PHP 相关文章推荐
PHP 图片上传实现代码 带详细注释
Apr 29 PHP
PHP面向对象的进阶学习(抽像类、接口、final、类常量)
May 07 PHP
解析PHP的session过期设置
Jun 29 PHP
php编写的简单页面跳转功能实现代码
Nov 27 PHP
CentOS6.5 编译安装lnmp环境
Dec 21 PHP
php限制上传文件类型并保存上传文件的方法
Mar 13 PHP
PHP中STDCLASS用法实例分析
Nov 11 PHP
Yii 2.0中场景的使用教程
Jun 02 PHP
什么是PHP文件?如何打开PHP文件?
Jun 27 PHP
PHP基于递归实现的约瑟夫环算法示例
Aug 27 PHP
Laravel如何使用Redis共享Session
Feb 23 PHP
PHP7基于curl实现的上传图片功能
May 11 PHP
PHP中你应该知道的require()文件包含的正确用法
Jun 12 #PHP
PHP查找与搜索数组元素方法总结
Jun 12 #PHP
php使用array_search函数实现数组查找的方法
Jun 12 #PHP
php线性表的入栈与出栈实例分析
Jun 12 #PHP
php数组合并与拆分实例分析
Jun 12 #PHP
php结合ACCESS的跨库查询功能
Jun 12 #PHP
php中smarty实现多模版网站的方法
Jun 11 #PHP
You might like
PHP远程调试之XDEBUG
2015/12/29 PHP
php file_get_contents取文件中数组元素的方法
2017/04/01 PHP
Yii输入正确验证码却验证失败的解决方法
2017/06/06 PHP
解决PHP curl或file_get_contents下载图片损坏或无法打开的问题
2019/10/11 PHP
取得传值的函数
2006/10/27 Javascript
[原创]网络复制内容时常用的正则+editplus
2006/11/30 Javascript
JavaScript 无符号右移运算符
2009/04/17 Javascript
Javascript调用C#代码
2011/01/17 Javascript
JS实现方向键切换输入框焦点的方法
2015/08/19 Javascript
Flow之一个新的Javascript静态类型检查器
2015/12/21 Javascript
jQuery计算文本框字数及限制文本框字数的方法
2016/03/01 Javascript
bootstrap中添加额外的图标实例代码
2017/02/15 Javascript
面试常见的js算法题
2017/03/23 Javascript
jQuery遮罩层实例讲解
2017/05/11 jQuery
zTree异步加载展开第一级节点的实现方法
2017/09/05 Javascript
jQuery实现弹窗下底部页面禁止滑动效果
2017/12/19 jQuery
详解vue2.0 资源文件assets和static的区别
2018/11/27 Javascript
Vue项目结合Vue-layer实现弹框式编辑功能(实例代码)
2020/03/11 Javascript
解决node终端下运行js文件不支持ES6语法
2020/04/04 Javascript
nodejs+express最简易的连接数据库的方法
2020/12/23 NodeJs
[01:32:50]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第一场 1月25日
2021/03/11 DOTA
python字符串分割及字符串的一些常规方法
2019/07/24 Python
Python中list循环遍历删除数据的正确方法
2019/09/02 Python
Python 脚本拉取 Docker 镜像问题
2019/11/10 Python
Python实现手势识别
2020/10/21 Python
Python从MySQL数据库中面抽取试题,生成试卷
2021/01/14 Python
竞聘演讲稿怎么写
2014/08/28 职场文书
先进党支部事迹材料
2014/12/24 职场文书
学生会生活部工作总结2015
2015/03/31 职场文书
政协工作总结2015
2015/05/20 职场文书
幼儿园教师暑期培训心得体会
2016/01/09 职场文书
2019年朋友圈经典励志语录50条
2019/07/05 职场文书
留学文书中的个人陈述,应该注意哪些问题?
2019/08/23 职场文书
Python爬虫之用Xpath获取关键标签实现自动评论盖楼抽奖(二)
2021/06/07 Python
使用javascript解析二维码的三种方式
2021/11/11 Javascript
Redis特殊数据类型HyperLogLog基数统计算法讲解
2022/06/01 Redis