Array数组函数(二)

array_count_values — 统计数组中所有的值出现的次数

1

arrayarray_count_values(array$input)

array_count_values() 返回一个数组,该数组用 input 数组中的值作为键名,该值在 input 数组中出现的次数作为值。

<?php$phpha=array(‘hello’,‘world’,‘tianya’,‘hello’,‘world’);$phpha_result=array_count_values($phpha);print_r($phpha_result);?>//结果:Array( [hello]=>2 [world]=>2 [tianya]=>1)

array_diff — 计算数组的差集 array_diff_key — 使用键名比较计算数组的差集 array_diff_ukey — 用回调函数对键名比较计算数组的差集 array_diff_assoc — 带索引检查计算数组的差集 array_diff_uassoc — 用用户提供的回调函数做索引检查来计算数组的差集

//array_diff() 返回一个数组,该数组包括了所有在array1中//但是不在任何其它参数数组中的值。注意键名保留不变。<?php$array1=array(“a”=>“green”,“red”,“blue”,“red”);$array2=array(“b”=>“green”,“yellow”,“red”);$result=array_diff($array1,$array2);print_r($result);?>//结果:Array( [1]=>blue)//本函数和array_diff()相同只除了比较是根据键名而不是值来进行的。<?php$array1=array(‘blue’ =>1,‘red’ =>2,‘green’ =>3,‘purple’=>4);$array2=array(‘green’=>5,‘blue’=>6,‘yellow’=>7,‘cyan’ =>8);print_r(array_diff_key($array1,$array2));?>//结果:Array( [red]=>2 [purple]=>4)//注意和 array_diff() 不同的是键名也用于比较。 <?php$array1=array(“a”=>“green”,“b”=>“brown”,“c”=>“blue”,“red”);$array2=array(“a”=>“green”,“yellow”,“red”);print_r(array_diff_assoc($array1,$array2));?>//结果:Array( [b]=>brown [c]=>blue [0]=>red)

array_fill — 用给定的值填充数组 array_fill_keys — Fill an array with values, specifying keys

array_filter — 用回调函数过滤数组中的单元

<?phpfunctionfunc_check($i){return$i>3?TRUE:FALSE;}$array1=array(2,3,5,6);$array2=array(NULL,”,‘hello’);$array3=array_filter($array1,‘func_check’);$array4=array_filter($array2);//函数func_check()用来判断给定的值,返回TRUE或FALSE//返回TRUE,则$array1中的值则会返回且键名不变,否则被过滤掉print_r($array3);//如果没有指定回调函数,则默认过滤掉array2中为等值为FALSE的成员//进行类型转换。因此本函数常用量顾虑掉数组中的空成员。print_r($array4);?>//结果:Array( [2]=>5 [3]=>6)Array( [2]=>hello)

array_flip — 交换数组中的键和值

//如果同一个值出现了多次,则最后一个键名将作为它的值,所有其它的都丢失了。<?php$trans=array(“a”=>1,“b”=>1,“c”=>2);$trans=array_flip($trans);print_r($trans);?>//结果:Array( [1]=>b [2]=>c)

array_intersect — 计算数组的交集 array_intersect_assoc — 带索引检查计算数组的交集 array_intersect_uassoc — 带索引检查计算数组的交集,用回调函数比较索引 array_intersect_key — 使用键名比较计算数组的交集 array_intersect_ukey — 用回调函数比较键名来计算数组的交集

<?php$array1=array(“a”=>“green”,“red”,“blue”);$array2=array(“b”=>“green”,“yellow”,“red”);$result=array_intersect($array1,$array2);print_r($result);?>//结果:Array( [a]=>green [0]=>red)//注意array_intersect_assoc()和array_intersect()不同的是键名也用于比较。<?php$array1=array(“a”=>“green”,“b”=>“brown”,“c”=>“blue”,“red”);$array2=array(“a”=>“green”,“yellow”,“red”);$result=array_intersect_assoc($array1,$array2);print_r($result);?>//结果:Array( [a]=>green)

原文发布于微信公众号 - php(phpdaily)

原文发表时间:2014-10-31

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏前端知识分享

第200天:js---常用string原型扩展

493
来自专栏Ryan Miao

Java复习1-基本数据类型

double数值精度是float的两倍,绝大部分都应该采用double而不是float。

1136
来自专栏云瓣

走近 Python (类比 JS)

Python 是一门运用很广泛的语言,自动化脚本、爬虫,甚至在深度学习领域也都有 Python 的身影。作为一名前端开发者,也了解 ES6 中的很多特性借鉴自 ...

39910
来自专栏coding for love

JS原生引用类型解析2-Array类型

(注1:如果有问题欢迎留言探讨,一起学习!转载请注明出处,喜欢可以点个赞哦!) (注2:更多内容请查看我的目录。)

852
来自专栏程序员互动联盟

【专业技术第二讲】c语言中const的使用

遇到有人为const的使用: ? 这里对const的使用做一个大致的总结。 C语言的const关键字与指针搭配使用,const是C语言中保留的一个关键字,它用来...

3396
来自专栏郭耀华‘s Blog

Java String 类

字符串广泛应用 在Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串。 ---- 创建字符串 创建字符串最简...

34312
来自专栏靠谱PM

JavaScript基本语法(一)

1.什么是变量 2.为什么要使用变量 3.变量如何使用 4.原理图 5.变量命名规则和规范 6.变量的交换

632
来自专栏程序员宝库

走近 Python (类比 JS)

Python 是一门运用很广泛的语言,自动化脚本、爬虫,甚至在深度学习领域也都有 Python 的身影。作为一名前端开发者,也了解 ES6 中的很多特性借鉴自 ...

33711
来自专栏懒人开发

Eventbus3代码分析(七):整体结构

自己没有怎么花时间画图,怕可能有遗漏的地方 所以,先参考一下别人的代码分析 (之前的内容,应该没有雷同的地方,参考别人的分析,也是自我提高的过程) 我们先...

522
来自专栏极乐技术社区

使用ES6新特性开发微信小程序(5)——内建对象的变化

Object对象 Object.prototype.proto:对象具有属性proto,可称为隐式原型,一个对象的隐式原型指向构造该对象的构造函数的原型,这也保...

1898

扫描关注云+社区