PHP array操作10个小技巧分享


Posted in PHP onJune 23, 2011

1、向array中添加元素
php是一个弱类型语言。因此不必象c语言那样为php array声明长度。向其中添加元素的过程也是声明和初始化的过程。

$capitals = array( 
'Alabama' => 'Montgomery', 
'Alaska' => 'Juneau', 
'Arizona' => 'Phoenix' 
);

继续添加元素也很简单
$capitals['Arkansas'] = 'Little Rock';

如果不是关联数组而只是数字索引的数组可以使用array_push()和array_unshift()函数增加元素
2、从array中删除元素
从数组中移除元素可以使用unset() 函数
unset($capitals['California']);

也可以使用array_pop()或array_shift()函数从数组头或尾部顺序移除元素
3、array键值互换
如果希望新建数组的键是老数组的值而值是老数组的键,简而言之就是键值对调,则可以使用array_flip()函数完成操作
$capitals = array( 
'Alabama' => 'Montgomery', 
'Alaska' => 'Juneau', 
'Arizona' => 'Phoenix' 
); 
$states = array_flip($capitals); 
// $states = array( 
// 'Montgomery' => string 'Alabama', 
// 'Juneau' => string 'Alaska', 
// 'Phoenix' => string 'Arizona' 
// );

4、合并数组
如果希望将两个或多个数组合并成一个新的数组,array_merge()函数可以帮上这个忙^_^
$stateCapitals = array( 
'Alabama' => 'Montgomery', 
'Alaska' => 'Juneau', 
'Arizona' => 'Phoenix' 
); 
$countryCapitals = array ( 
'Australia' => 'Canberra', 
'Austria' => 'Vienna', 
'Algeria' => 'Algiers' 
); 
$capitals = array_merge($stateCapitals, $countryCapitals);

5、修改array中的值
譬如希望将数组的中值全部改为小写后大写首字母,使用回调函数递归地对每个数组成员调用是个不错的方法,php中这个函数是php_map()
function capitalize($element) 
{ 
$element = strtolower($element); 
return ucwords($element); 
} 
$capitals = array( 
'Alabama' => 'montGoMEry', 
'Alaska' => 'Juneau', 
'Arizona' => 'phoeniX' 
); 
$capitals = array_map("capitalize", $capitals);

6、根据array的键为数组排序
$capitals = array( 
'Arizona' => 'Phoenix', 
'Alaska' => 'Juneau', 
'Alabama' => 'Montgomery' 
); 
ksort($capitals);

7、随机化array元素的顺序
shuffle() 和上面的ksort()函数恰恰相反,可以打乱数组现有的秩序,以达到随机化的目的。
$capitals = array( 
'Arizona' => 'Phoenix', 
'Alaska' => 'Juneau', 
'Alabama' => 'Montgomery' 
); 
shuffle($capitals);

8、查找键或值是否存在
查找是否存在值使用in_array()函数
$capitals = array( 
'Arizona' => 'Phoenix', 
'Alaska' => 'Juneau', 
'Alabama' => 'Montgomery' 
); 
if (in_array("Juneau", $capitals)) 
{ 
echo "Exists!"; 
} else { 
echo "Does not exist!"; 
}

查找是否存在键使用array_key_exists()函数
$capitals = array( 
'Arizona' => 'Phoenix', 
'Alaska' => 'Juneau', 
'Alabama' => 'Montgomery' 
); 
if (array_key_exists("Alaska", $capitals)) 
{ 
echo "Key exists!"; 
} else { 
echo "Key does not exist!"; 
}

9、数组查找
这个是老生常谈了,基本上都用的到array_search()函数
$capitals = array( 
'Arizona' => 'Phoenix', 
'Alaska' => 'Juneau', 
'Alabama' => 'Montgomery' 
); 
$state = array_search('Juneau', $capitals); 
// $state = 'Alaska'

10、使用php标准函数库
一口气介绍这个多操作array的函数,如果您还觉得不过瘾,可以继续查看Standard PHP Library 中的内容^_^
$capitals = array( 
'Arizona' => 'Phoenix', 
'Alaska' => 'Juneau', 
'Alabama' => 'Montgomery' 
); 
$arrayObject = new ArrayObject($capitals); 
foreach ($arrayObject as $state => $capital) 
{ 
printf("The capital of %s is %s<br />", $state, $capital); 
} 
// The capital of Arizona is Phoenix 
// The capital of Alaska is Juneau 
// The capital of Alabama is Montgomery
PHP 相关文章推荐
收集的php编写大型网站问题集
Mar 06 PHP
php中mysql模块部分功能的简单封装
Sep 30 PHP
php中使用preg_match_all匹配文章中的图片
Feb 06 PHP
PHP基础之运算符的使用方法
Apr 28 PHP
解析php中获取系统信息的方法
Jun 25 PHP
phpword插件导出word文件时中文乱码问题处理方案
Aug 19 PHP
PHP连接SQLServer2005的方法
Jan 27 PHP
codeigniter实现get分页的方法
Jul 10 PHP
PHP在线书签系统分享
Jan 04 PHP
php把时间戳转换成多少时间之前函数的实例
Nov 16 PHP
thinkPHP5.0框架整体架构总览【应用,模块,MVC,驱动,行为,命名空间等】
Mar 25 PHP
php获取excel文件数据
Apr 21 PHP
php 缩略图实现函数代码
Jun 23 #PHP
php中随机显示图片的函数代码
Jun 23 #PHP
使用php shell命令合并图片的代码
Jun 23 #PHP
php whois查询API制作方法
Jun 23 #PHP
PHP字符编码问题之GB2312 VS UTF-8解决方法
Jun 23 #PHP
PHP读取网页文件内容的实现代码(fopen,curl等)
Jun 23 #PHP
php中获取指定IP的物理地址的代码(正则表达式)
Jun 23 #PHP
You might like
ThinkPHP关联模型操作实例分析
2012/09/23 PHP
PHP中exec与system用法区别分析
2014/09/22 PHP
PHP针对JSON操作实例分析
2015/01/12 PHP
使用PHP接受文件并获得其后缀名的方法
2015/08/05 PHP
Joomla数据库操作之JFactory::getDBO用法
2016/05/05 PHP
PHP自动载入类文件函数__autoload的使用方法
2019/03/25 PHP
Js 获取HTML DOM节点元素的方法小结
2009/04/24 Javascript
XENON基于JSON变种
2010/07/27 Javascript
Prototype源码浅析 String部分(一)之有关indexOf优化
2012/01/15 Javascript
javascript根据像素点取位置示例
2014/01/27 Javascript
jquery事件preventDefault()方法用法实例
2015/01/16 Javascript
JavaScript实现按照指定长度为数字前面补零输出的方法
2015/03/19 Javascript
JS实现动态生成表格并提交表格数据向后端
2020/11/25 Javascript
vue动态组件实现选项卡切换效果
2017/03/08 Javascript
jQuery表格(Table)基本操作实例分析
2017/03/10 Javascript
使用webpack打包后的vue项目如何正确运行(express)
2018/10/26 Javascript
基于postman获取动态数据过程详解
2020/09/08 Javascript
Python的pycurl包用法简介
2015/11/13 Python
python在ubuntu中的几种安装方法(小结)
2017/12/08 Python
利用python将图片版PDF转文字版PDF
2019/05/03 Python
Selenium+Python 自动化操控登录界面实例(有简单验证码图片校验)
2019/06/28 Python
简单了解pytest测试框架setup和tearDown
2020/04/14 Python
Python读取excel文件中带公式的值的实现
2020/04/17 Python
Python如何实现邮件功能
2020/05/27 Python
Python将list元素转存为CSV文件的实现
2020/11/16 Python
纯CSS3实现的阴影效果
2014/12/24 HTML / CSS
让IE下支持Html5的placeholder属性的插件
2014/09/02 HTML / CSS
HTML5中外部浏览器唤起微信分享
2020/01/02 HTML / CSS
澳大利亚百货商店中销量第一的商务衬衫品牌:Van Heusen
2018/07/26 全球购物
金属材料工程个人求职的自我评价
2013/12/04 职场文书
酒吧创业计划书
2014/01/18 职场文书
关于是否需要写商业计划书
2014/02/07 职场文书
小学教师党员承诺书
2015/04/27 职场文书
2015年计算机教师工作总结
2015/07/22 职场文书
2016十一国庆节慰问信
2015/12/01 职场文书
SQL语句中EXISTS的详细用法大全
2022/06/25 MySQL