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实现的获取URL信息的类
Jan 02 PHP
一个自定义位数的php多用户计数器代码
Mar 11 PHP
PHP面向对象之旅:深入理解static变量与方法
Jan 06 PHP
destoon实现会员商铺中指定会员或会员组投放广告的方法
Aug 21 PHP
PHP中使用匿名函数操作数据库的例子
Nov 17 PHP
Laravel 5框架学习之路由、控制器和视图简介
Apr 07 PHP
PHP如何使用Memcached
Apr 05 PHP
Yii2设置默认控制器的两种方法
May 19 PHP
PHP实现可精确验证身份证号码的工具类示例
May 31 PHP
php设计模式之策略模式应用案例详解
Jun 17 PHP
PHP替换Word中变量并导出PDF图片的实现方法
Nov 26 PHP
PHP实现rar解压读取扩展包小结
Jun 03 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仿博客园 个人博客(2) 数据库增添改删
2013/07/05 PHP
php读取大文件示例分享(文件操作类)
2014/04/13 PHP
PHP实现根据设备类型自动跳转相应页面的方法
2014/07/24 PHP
关于PHP中字符串与多进制转换函数的实例代码
2016/11/03 PHP
php layui实现前端多图上传实例
2019/07/30 PHP
关于Yii中模型场景的一些简单介绍
2019/09/22 PHP
js模仿html5 placeholder适应于不支持的浏览器
2013/01/13 Javascript
Js日期选择器并自动加入到输入框中示例代码
2013/08/02 Javascript
jquery如何扑捉回车键触发的事件
2014/04/24 Javascript
Javascript编写2048小游戏
2015/07/07 Javascript
深入浅析JavaScript中prototype和proto的关系
2015/11/15 Javascript
jQuery EasyUI 入门必看
2016/06/03 Javascript
Angular.js实现动态加载组件详解
2017/05/28 Javascript
JavaScript 通过Ajax 动态加载CheckBox复选框
2017/08/31 Javascript
angularJS实现不同视图同步刷新详解
2018/10/09 Javascript
JS重学系列之聊聊new操作符
2019/03/04 Javascript
在NPM发布自己造的轮子的方法步骤
2019/03/09 Javascript
详解iframe跨域的几种常用方法(小结)
2019/04/29 Javascript
详解如何使用router-link对象方式传递参数?
2019/05/02 Javascript
详解nuxt 微信公众号支付遇到的问题与解决
2019/08/26 Javascript
小程序input数据双向绑定实现方法
2019/10/17 Javascript
使用Python来开发Markdown脚本扩展的实例分享
2016/03/04 Python
Python爬虫基础之XPath语法与lxml库的用法详解
2018/09/13 Python
python和mysql交互操作实例详解【基于pymysql库】
2019/06/04 Python
python实现处理mysql结果输出方式
2020/04/09 Python
详解使用Python写一个向数据库填充数据的小工具(推荐)
2020/09/11 Python
详解python日志输出使用配置文件格式
2021/02/10 Python
HTML5的Geolocation地理位置定位API使用教程
2016/05/12 HTML / CSS
索尼巴西商店:Sony巴西
2019/06/21 全球购物
YII2 全局异常处理深入讲解
2021/03/24 PHP
大专自我鉴定范文
2013/10/01 职场文书
二手车交易协议书标准版
2014/11/16 职场文书
2014年学生党支部工作总结
2014/12/20 职场文书
小学一年级学生评语大全
2014/12/25 职场文书
土木工程毕业答辩开场白
2015/05/29 职场文书
win11自动弹出虚拟键盘怎么关闭? Win11关闭虚拟键盘的技巧
2023/01/09 数码科技