php数组操作之键名比较与差集、交集赋值的方法


Posted in PHP onNovember 10, 2014

本文实例讲述了php数组操作之键名比较与差集、交集赋值的方法。分享给大家供大家参考。具体方法如下:

该实例主要实现对数组的各种常见操作。如对键名比较计算数组的差集,计算差集,给指定数组中插入一个元素,反转数组与交集赋值新的数组等。

具体代码如下:

//定义回调函数

function key_compare_func($key1,$key2)

{

  if($key1==$key2)         //如果两参数相等

  return 0;          //返回0

  else if($key1>$key2)        //如果$key1>$key2

  return 1;          //返回1

  else           //如果$key1<$key2

  return -1;          //返回-1

}

//分别定义两个数组

$array1=array('blue'=>1,'red'=>2,'green'=>3,'purple'=>4);

$array2=array('green'=>5,'blue'=>6,'yellow'=>7,'cyan'=>8);

//用回调函数对键名比较计算数组的差集

$result=var_dump(array_diff_ukey($array1,$array2,'key_compare_func'));

print_r($result); 

//输出比较结果

         

$array1=array("a"=>"green","red","blue","red");     //定义数组1

$array2=array("b"=>"green","yellow","red");     //定义数组2

$result=array_diff($array1,$array2);       //计算差集

print_r($result);           //输出比较结果
//

$result=array_fill(5,6,'banana');    //为数组$a从第5个元素开始添加6个banana

print_r($result);       //输出结果

//

function odd($var)

{

  return($var%2==1);     //如果参数为奇数,返回true,否则返回false

}

function even($var)

{

  return($var%2==0);     //如果参数为偶数,返回true,否则返回false

}

//分别定义两个数组

$array1=array("a"=>1,"b"=>2,"c"=>3,"d"=>4,"e"=>5);

$array2=array(6,7,8,9,10,11,12);

echo "过滤奇数:n";

print_r(array_filter($array1,"odd"));   //过滤数组1中的奇数

echo "过滤偶数:n";

print_r(array_filter($array2,"even"));   //过滤数组2中的偶数

//

$trans=array("a"=>1,"b"=>2,"c"=>3);     //定义数组

$result=array_flip($trans);       //反转数组

print_r($result);         //输出反转后的数组

//

$array1=array("a"=>"green","b"=>"brown","c"=>"blue","red");

$array2=array("a"=>"green","yellow","red");

$result_array=array_intersect_assoc($array1,$array2);  //交集赋值到$result_array

print_r($result_array);        //输出结果数组

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

PHP 相关文章推荐
我的论坛源代码(八)
Oct 09 PHP
用PHP和ACCESS写聊天室(七)
Oct 09 PHP
PHP里的中文变量说明
Jul 23 PHP
关于PHP自动判断字符集并转码的详解
Jun 26 PHP
ThinkPHP3.2.2的插件控制器功能简述
Jul 09 PHP
YII中assets的使用示例
Jul 31 PHP
php中HTTP_REFERER函数用法实例
Nov 21 PHP
ThinkPHP函数详解之M方法和R方法
Sep 10 PHP
PHP微信开发用Cache 解决数据缓存
Jul 11 PHP
redis查看连接数及php模拟并发创建redis连接的方法
Dec 15 PHP
在php的yii2框架中整合hbase库的方法
Sep 20 PHP
Laravel事件监听器用法实例分析
Mar 12 PHP
php json转换成数组形式代码分享
Nov 10 #PHP
PHP冒泡算法详解(递归实现)
Nov 10 #PHP
PHP字符串word末字符实现大小写互换的方法
Nov 10 #PHP
PHP 快速排序算法详解
Nov 10 #PHP
PHP基于CURL进行POST数据上传实例
Nov 10 #PHP
ci检测是ajax还是页面post提交数据的方法
Nov 10 #PHP
php采用ajax数据提交post与post常见方法总结
Nov 10 #PHP
You might like
typecho插件编写教程(六):调用接口
2015/05/28 PHP
php自定义截取中文字符串-utf8版
2017/02/27 PHP
thinkPHP5 ACL用户权限模块用法详解
2017/05/10 PHP
jQuery 使用手册(六)
2009/09/23 Javascript
JavaScript在IE和Firefox浏览器下的7个差异兼容写法小结
2010/06/18 Javascript
给html超链接设置事件不使用href来完成跳
2014/04/20 Javascript
用JavaScript实现用一个DIV来包装文本元素节点
2014/09/09 Javascript
jquery调取json数据实现省市级联的方法
2015/01/29 Javascript
nodejs中的fiber(纤程)库详解
2015/03/24 NodeJs
js中删除数组中的某一元素实例(无下标时)
2017/02/28 Javascript
详解AngularJS通过ocLazyLoad实现动态(懒)加载模块和依赖
2017/03/01 Javascript
BootStrap表单控件之文本域textarea
2017/05/23 Javascript
nodejs开发微信小程序实现密码加密
2017/07/11 NodeJs
jQuery实现手势解锁密码特效
2017/08/14 jQuery
bootstrap table方法之expandRow-collapseRow展开或关闭当前行数据
2020/08/09 Javascript
jquery实现左右轮播切换效果
2018/01/01 jQuery
Vue 项目分环境打包的方法示例
2018/08/03 Javascript
详解angular2如何手动点击特定元素上的点击事件
2018/10/16 Javascript
Node.js对MongoDB进行增删改查操作的实例代码
2019/04/18 Javascript
Python 拷贝对象(深拷贝deepcopy与浅拷贝copy)
2008/09/06 Python
用python记录运行pid,并在需要时kill掉它们的实例
2017/01/16 Python
分析python请求数据
2018/08/19 Python
手工制作的音乐盒:Music Box Attic
2019/09/05 全球购物
儿科护士自我鉴定
2013/10/14 职场文书
策划总监岗位职责
2014/02/16 职场文书
做一个有道德的人演讲稿
2014/05/14 职场文书
北京申奥口号
2014/06/19 职场文书
暑假社会实践证明格式
2014/10/28 职场文书
2015年感恩节活动总结
2015/03/24 职场文书
教务处教学工作总结
2015/08/10 职场文书
大学迎新生欢迎词
2015/09/29 职场文书
2016年“抗战胜利纪念日”71周年校园广播稿
2015/12/18 职场文书
高质量“欢迎词”
2019/04/03 职场文书
golang 实现菜单树的生成方式
2021/04/28 Golang
Oracle以逗号分隔的字符串拆分为多行数据实例详解
2021/07/16 Oracle
关于Spring配置文件加载方式变化引发的异常详解
2022/01/18 Java/Android