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简单系统数据添加以及数据删除模块源文件下载
Jun 07 PHP
特详细的PHPMYADMIN简明安装教程
Aug 01 PHP
使用zend studio for eclipse不能激活代码提示功能的解决办法
Oct 11 PHP
为IP查询添加GOOGLE地图功能的代码
Aug 08 PHP
PHP校验ISBN码的函数代码
Jan 17 PHP
PHP中几种常见的超时处理全面总结
Sep 11 PHP
PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解
Jul 03 PHP
PHP语法小结之基础和变量
Nov 22 PHP
简单了解PHP编程中数组的指针的使用
Nov 30 PHP
Thinkphp微信公众号支付接口
Aug 04 PHP
Yii CDBCriteria常用方法实例小结
Jan 19 PHP
Win10 下安装配置IIS + MySQL + nginx + php7.1.7
Aug 04 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
PHP出错界面
2006/10/09 PHP
PHP使用array_multisort对多个数组或多维数组进行排序
2014/12/16 PHP
Ajax提交表单时验证码自动验证 php后端验证码检测
2016/07/20 PHP
PHP基于自定义函数生成笛卡尔积的方法示例
2017/09/30 PHP
JavaScript的Cookies
2008/01/16 Javascript
浅谈Javascript嵌套函数及闭包
2010/11/09 Javascript
IE6/7/8中Option元素未设value时Select将获取空字符串
2011/04/07 Javascript
基于jquery打造的百分比动态色彩条插件
2012/09/19 Javascript
利用javascript实现禁用网页上所有文本框,下拉菜单,多行文本域
2013/12/14 Javascript
使用Function.apply()的参数数组化来提高 JavaScript程序性能的技巧
2015/12/23 Javascript
使用vue.js开发时一些注意事项
2016/04/27 Javascript
js实现目录链接,内容跟着目录滚动显示的简单实例
2016/10/15 Javascript
html、css和jquery相结合实现简单的进度条效果实例代码
2016/10/24 Javascript
十分钟带你快速了解React16新特性
2017/11/10 Javascript
完美解决mui框架off-canvas侧滑超出部分隐藏无法滚动的问题
2018/01/25 Javascript
Angular模版驱动表单的使用总结
2018/05/05 Javascript
vue中改变滚动条样式的方法
2020/03/03 Javascript
Javascript数组及类数组相关原理详解
2020/10/29 Javascript
VUE+Element实现增删改查的示例源码
2020/11/23 Vue.js
python字符串的常用操作方法小结
2016/05/21 Python
python3实现全角和半角字符转换的方法示例
2017/09/21 Python
浅谈Python处理PDF的方法
2017/11/10 Python
对python 判断数字是否小于0的方法详解
2019/01/26 Python
python如何获取列表中每个元素的下标位置
2019/07/01 Python
pandas条件组合筛选和按范围筛选的示例代码
2019/08/26 Python
python中with语句结合上下文管理器操作详解
2019/12/19 Python
pytorch实现mnist分类的示例讲解
2020/01/10 Python
python3安装OCR识别库tesserocr过程图解
2020/04/02 Python
美国珠宝网上商店:Jeulia
2016/09/01 全球购物
项目考察欢迎辞
2014/01/17 职场文书
家庭财产分割协议书范本
2014/11/24 职场文书
小学班主任研修日志
2015/11/13 职场文书
公开致歉信
2019/06/24 职场文书
朋友圈早安励志语录!
2019/07/08 职场文书
详解JSON.parse和JSON.stringify用法
2022/02/18 Javascript
深入理解pytorch库的dockerfile
2022/06/10 Python