php数组个数
A. php,检测与数组数据相同的个数
<?php
$arr1=array("1","2","3","4","5","6","7","8","9","10");
$arr2=array("11","12","13","14","15","16","17","18","19","20");
$a=2;
$b=6;
$c=9;
$d=11;
$e=15;
$f=20;
$x=$y=0;
foreach(array($a,$b,$c,$d,$e,$f)as$test){
in_array($test,$arr1)&&$x++;
in_array($test,$arr2)&&$y++;
}
echo"x:",$x,"y:",$y," ";
B. php判断一个多维数组当中有多少个n维数组
1、本次仅代表个人意见,不喜勿喷
2、以下代码使用到的知识点包括,函数递归调用,数组去重,数组排序,以及数组遍历
3、本次测试了三个例子,例子的结果见程序后附图
/**************************** 代码开始 begin*************************************/
<?php
/***
*@author biking
*@time 21015-11-18
*@function 获取数组的维数
*/
function getArrayNum($array,$n,&$num){
if(!is_array($array)){
return ;
}
foreach($array as $val){
if(is_array($val)){
$tmpn = $n+1;
getArrayNum($val, $tmpn,$num);//递归调用
}else{
array_push($num,$n);
continue;
}
}
}
/************************测试例子*********************/
//$myarray = array(1,2,array(11,22),3,array(33,44,array(111,222,333)));//例子1
//$myarray = "hello";//例子2
$myarray = array(2,3,array('hei','this'));//例子3
$num = array();
getArrayNum($myarray, 1,$num);//首次调用
if(empty($num)){//进行判断
echo "<meta charset='utf-8' />不是数组!";
die();
}
//数组去重
array_unique($num);
//升序排序
sort($num);
//输出测试的数组的维数
echo "<meta charset='utf-8' />该例子的数组维数是:".$num[count($num)-1];
/**************************** 代码结束 end*************************************/
例子1结果
C. PHP中数组个数的计算问题
计算数组维度 ?
<?php
function get_arr_deep($arr){
$deep = 0;
if(is_array($arr)){
$deep += get_arr_deep($arr[0])+1;
return $deep;
}
return $deep;
}
$arr = array(0 => array(0=>array('a')));
var_mp(get_arr_deep($arr));
?>
只能计算数字索引的数组,而且第一项不能为空;不知是否满足你的需求。
D. php 统计二维数组中某个相等值的总个数,并且组合成一个新的数组
$arr=array(
array('sv_id'=>1,'mid_id'=>1,'sv_question'=>20),
array('sv_id'=>2,'mid_id'=>2,'sv_question'=>10),
array('sv_id'=>3,'mid_id'=>1,'sv_question'=>20),
array('sv_id'=>4,'mid_id'=>3,'sv_question'=>20),
array('sv_id'=>5,'mid_id'=>2,'sv_question'=>20),
);
foreach($arras$k=>$val){
if(!isset($tmp[$val['mid_id']])){
$tmp[$val['mid_id']][$val['sv_id']]=array('sv_id'=>$val['sv_id'],'mid_id'=>$val['mid_id'],'sv_question'=>$val['sv_question'],);
}else{
$tmp[$val['mid_id']][$val['sv_id']]=array('sv_id'=>$val['sv_id'],'mid_id'=>$val['mid_id'],'sv_question'=>$val['sv_question'],);
}
}
print_r($tmp);
#效果是一样,但是不理解“计算sv_qustion的总和”是什么意思
E. PHP读取文件到数组,并统计相同元素的个数,按元素个数的多少排序
$file='a.txt';//含路径文件名
$txt=file_get_contents($file);//读取文件全部内容
$arr=implode(PHP_EOL,$txt);//将文件内容以换行符分割成数组
$count=array_count_values($arr);//统计数组中各个值出现的次数
arsort($count);//按数组值(统计数)对数组排序
$result=array_keys($count);//得到按重复次数排序的值为订单号的索引数组
F. php数组 找出符合条件的个数
$your_array = array();//你的二维数组
$count = 0;
foreach($your_array as $item){
if($item['type'] == "xx")
$count++;
}
G. PHP如何获取数组里元素的个数
//count()函数返回数组中元素的数目。
//也可以使用sizeof()
//多维数组加参数1如:count($cars,1)可以递归统计
$cars=array("Volvo","BMW","Toyota");
echocount($cars);
H. php如何统计一个数组中相同元素的个数
简单的循环即可,选出重复(出现次数大于等于2)的元素并统计每个重复元素出现的次数:
php中的 array_count_values() 函数可以实现
array_count_values() 函数用于统计数组中所有值出现的次数。
本函数返回一个数组,其元素的键名是原数组的值,键值是该值在原数组中出现的次数。
array_count_values(array)
例如:
<?php
$a=array("Cat","Dog","Horse","Dog");
print_r(array_count_values($a));
?>
输出:
Array ( [Cat] => 1 [Dog] => 2 [Horse] => 1 )
(8)php数组个数扩展阅读:
php统计数组元素个数
count():对数组中的元素个数进行统计;
sizeof():和count()具有同样的用途,这两个函数都可以返回数组元素个数,得到一个常规标量变量中的元素个数。
如果传递给这个函数的数组是一个空数组,或者是一个没有经过设定的变量,返回的数组元素个数就是0;
array_count_value():统计每个特定的值在数组$array中出现过的次数;
如:
$array=array(4,5,1,2,3,1,2,1);
$ac=array_count_value($array);
将创建一个名为$ac数组,该数组包括:
关键字 值
4 1
5 1
1 3
2 2
3 1
I. PHP从数组中取出多个数值。
$arr = array(1,2,3,4,5,6,7,8,9,10);
$myWant = array();
for($i=0;$i<3;$i++)
{
$len = sizeof($arr);
$j = rand(0,$len-1);
$myWant[] = $arr[$j];
if($j==$len-1)
unset($arr[$len-1]);
else
{
$arr[$j] = $arr[$len-1];
unset($arr[$len-1]);
}
}
print_r($myWant);
PHP手册里根本没有array_rand函数