博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
统计数组元素的个数和唯一性的函数
阅读量:4455 次
发布时间:2019-06-07

本文共 1662 字,大约阅读时间需要 5 分钟。

有些函数可以用来确定数组中的值总数及唯一值的个数。使用函数count()对元素个数进行统计,sizeof()函数时count()的别名,他们的功能是一样的。

①函数count()

函数count()的作用是计算数组中的元素数目或对象中的属性个数。对于数组,返回其元素的个数,对于其他值则返回1。如果参数是变量而变量没有定义或是变量包含一个空的数组,该函数会返回0.该函数有两个参数,其函数原型如下:

int count(mixed var [,int mode])

其中第一个参数是必需的,传入要计数的数组或对象。第二个参数是可选的,规定函数的模式是否递归地计算多维数组中的数组的元素个数。可能的值是0和1,0为默认值,不检测多维数组,为1则检测多维数组。函数count()使用的代码如下所示:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    
$lamp
=
array
(
"Linux"
,
"Apache"
,
"MySQL"
,
"PHP"
);
    
echo
count
(
$lamp
);         
//输出数组的个数为:4
 
    
//声明一个二维数组,统计数组中元素的个数
    
$web
=
array
(
        
'lanmp'
=>
array
(
"Linux"
,
"Apache"
,
"MySQL"
,
"PHP"
),
        
'j2ee'
=>
array
(
"Unix"
,
"Tomcat"
,
"Oracle"
,
"JSP"
)
    
);
 
    
echo
count
(
$web
,1);            
//第二个参数的模式为1则计算多维数组的个数,输出10
    
echo
count
(
$web
)               
//默认模式为0,不计算数组的个数,输出2
?>

②函数array_count_values()

array_count_values()函数用于统计数组中所有值出现的次数。该函数只有一个参数,其函数的原型如下:

array array_count_values(array input)

参数规定输入一个数组,返回一个数组,其元素的键名是原数组的值,键值是该值在元素组中出现的次数。函数array_count_values()使用的代码如下所示:

1
2
3
4
5
6
7
<?php
    
$array
=
array
(1,
'php'
,1,
'mysql'
,
'php'
);    
//晟敏跟一个带有重复值得数组
 
    
$newArray
=
array_count_values
(
$array
);    
//统计数组$array中所有值出现的次数
 
    
print_r(
$newArray
);    
//输出:Array([1]=>2  [php]=>2  [mysql]=>1)
?>

③函数array_unique()

array_unique()函数用于删除数组中重复的值,并返回没有重复值得新数组。该函数的原型如下:

array array_unique(array array)

参数需要接收一个数组,当数组中几个元素的值相等时,只保留一个元素,其他的元素被删除,别且返回的新数组中键名不变。array_unique()先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的array中同一个值的第一个出现的键名会被保留。函数array_unique()使用的代码如下所示:

1
2
3
4
<?php
    
$a
=
array
(
"a"
=>
"php"
,
"b"
=>
"mysql"
,
"c"
=>
"php"
);           
//声明一个带有重复值的数组
    
print_r(
array_unique
(
$a
));         
//删除重复值后输出:Array([a]=>php  [b]=>mysql)
?>
 

转载于:https://www.cnblogs.com/ncong/p/3899196.html

你可能感兴趣的文章
[leetCode]Linked List Cycle I+II
查看>>
leetcode中的python学习
查看>>
sqlserver打开对象资源管理器管理的帮助文档的快捷键
查看>>
JBOSSAS 5.x/6.x 反序列化命令执行漏洞(CVE-2017-12149)
查看>>
Zookeeper zkui-zookeeper图形化管理工具
查看>>
java运行时内存分类
查看>>
为什么说 Git 比 SVN 更好
查看>>
1.基础数据类型的初识 字符串 bool 整型 if else elif
查看>>
【设计模式】4、原型模式
查看>>
进入meta模式关闭背光灯
查看>>
webstorm上svn的安装使用
查看>>
【JEECG技术文档】数据权限自定义SQL表达式用法说明
查看>>
使用 Bootstrap Typeahead 组件
查看>>
EF不能很好的支持DDD?估计是我们搞错了!
查看>>
Qt 静态库与共享库(动态库)共享配置的一个小办法
查看>>
linux_cacti 配置之 安装snmp 服务
查看>>
201407-至今
查看>>
c# 应用事务
查看>>
优化杭州某著名电子商务网站高并发千万级大型数据库经验之- SQL语句优化(转)...
查看>>
WPF——TargetNullValue(如何在绑定空值显示默认字符)
查看>>