php数组去除重复的
㈠ php数组去除重复的记录
用这个函数array_unique()
㈡ 【php】合并多个数组并去掉相同的
你是要把$tpid数组的内容合并吗,可以先弄了一个空数组,for里面归并到这个空数组,for结束之后进行内唯一处理,大容致逻辑如下:
<?php
$result=Array();
for($i=0;$i<$num;$i++){
$tpid=$data[$i]['busitype'];
$tpid=explode(".",$tpid,-1);
print_r($tpid);
echo "<br>";
$result=array_merge($result,$tpid);
}
$result=array_unique($result);
?>
补充:
那是array_merge的问题,重复的下标会被合并,你试试看使用array_merge_recursive吧,我无法测试程序,没有你的数据。
㈢ php数组怎么去除重复的数组值
array_unique() 函数定义和用法
移除数组中的重复的值,并返回结果数组。
当几专个数组元素的值相等时,只保留属第一个元素,其他的元素被删除。
返回的数组中键名不变。
<?php
$a=array("a"=>"XX","b"=>"D","c"=>"XX");
print_r(array_unique($a));
?>
输出:Array ( [a] => XX [b] => D)
㈣ php 去掉完全相同的重复数组
一、这个没有被合并,只是取的后面这个键名的值,
二、$input=array("11"=>"aaaa","22"=>"bbbb","33"=>"cccc","11"=>"aaada","44"=>"cccc1","55"=>"cccc");
$result
=
array_unique
($input);
print_r($result);
输出的结果:Array
(
[11]
=>
aaada
[22]
=>
bbbb
[33]
=>
cccc
[44]
=>
cccc1
)
键名33
和
55
的值完全一样的时候,后者会被干掉
如果你要的是键名和值完全一致的时候才删除一个的话,似乎不能,因为键名是不允许重复的
听你的情况似乎数据量很大,建议你使用
array_flip()函数
【php中,删除数组中重复元素有一个可用的函数,那就是array_unique(),
但是它并不是一个最高效的方法,使用array_flip()函数将比array_uniqure()在速度上高出五倍左右。】
例子:$input=array("11"=>"aaaa","22"=>"bbbb","33"=>"cccc","11"=>"aaada","44"=>"cccc1","55"=>"cccc");
$arr1
=
array_flip(array_flip($input));
print_r($arr1);
输出的结果:Array
(
[11]
=>
aaada
[22]
=>
bbbb
[55]
=>
cccc
[44]
=>
cccc1
)
㈤ php数组的重复值如何过滤掉
array_unique() 函数移除数组中的重复的值,并返回结果数组。
当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除。
返回的数组中键名不变。
array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。
㈥ php数组去除重复的值
之前写了一篇关于数组去重的文章,但是仅限于一维数组。下面的函数可以用于二维数组:
//二维数组去掉重复值
function array_unique_fb($array2D){foreach ($array2D as $v){$v = join(",",$v); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串
$temp[] = $v;}
$temp = array_unique($temp); //去掉重复的字符串,也就是重复的一维数组
foreach ($temp as $k => $v){$temp[$k] = explode(",",$v); //再将拆开的数组重新组装}return $temp;}
如果你想保留数组的键值,可以用下面的函数:
//二维数组去掉重复值 并保留键值
function array_unique_fb($array2D){foreach ($array2D as $k=>$v){$v = join(",",$v); //降维,也可以用implode,将一维数组转换为用逗号连接的字符串
$temp[$k] = $v;}$temp = array_unique($temp); //去掉重复的字符串,也就是重复的一维数组
foreach ($temp as $k => $v){$array=explode(",",$v); //再将拆开的数组重新组装
$temp2[$k]["id"] =$array[0];
$temp2[$k]["litpic"] =$array[1];
$temp2[$k]["title"] =$array[2];
$temp2[$k]["address"] =$array[3];
$temp2[$k]["starttime"] =$array[4];
$temp2[$k]["endtime"] =$array[5];
$temp2[$k]["classid"] =$array[6];
大概就这样啦。
以上回答你满意么?
㈦ php去掉数组中重复的值!!十万火急,答案正确再加分!
我觉得你没必要$str = array_fill($i,1,'$name');
往数组添值.你直接$str[$i]=$name,就行.或者$str[]=$name
你确实应该var_mp($str)输出看看,是不是有空格什么的.
㈧ php 删除数组重复的值.
<?php
$arr=array("aa","bbs","good","ser","uu","ser","ser","ser","ser","bbs","good");
print_r($arr);
echo "<br/>";
$tempArray = array();
foreach($arr as $one){
$tempArray[$one] = true;
}
$arr = array_keys($tempArray);
print_r($arr);
echo "<br/>";
㈨ php中如何去除数组中的重复值
<?php
$arr=array(6,3,53,5,3);
$arr2=array();
foreach($arras$v){
if(!in_array($v,$arr2)){
$arr2[]=$v;
}
}
var_mp($arr2);
?>
$arr2即为除掉重复值的结专果属
㈩ PHP如何把这些数组 去除重复并且显示,再统计求助!
直接上代码,希望仔细阅读分析
<?php
header("Content-Type:text/html;charset=UTF-8");
$a[]=array('id'=>1,'department'=>'市场');
$a[]=array('id'=>1,'department'=>'市场');
$a[]=array('id'=>1,'department'=>'市场');
$a[]=array('id'=>2,'department'=>'办公室');
$a[]=array('id'=>2,'department'=>'办公室');
$a[]=array('id'=>2,'department'=>'办公室');
$a[]=array('id'=>3,'department'=>'收发室');$out_put=array();
foreach($aas$v){
if(!isset($out_put[$v['id']]['department'])){
$out_put[$v['id']]['department']=$v['department'];
$out_put[$v['id']]['count']=1;
}else{
$out_put[$v['id']]['count']=$out_put[$v['id']]['count']+1;
}
}
//print_r($out_put);
foreach($out_putas$u=>$v){
echo$u.'★'.$v['department'].'★'.$v['count'].'<br/>';
}