你是要把$tpid數(shù)組的內(nèi)容合并嗎,可以先弄了一個空數(shù)組,for里面歸并到這個空數(shù)組,for結束之后進行唯一處理,大致邏輯如下:
創(chuàng)新互聯(lián)建站堅持“要么做到,要么別承諾”的工作理念,服務領域包括:網(wǎng)站建設、網(wǎng)站設計、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的郫都網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!
?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吧,我無法測試程序,沒有你的數(shù)據(jù)。
一、這個沒有被合并,只是取的后面這個鍵名的值,
二、$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
的值完全一樣的時候,后者會被干掉
如果你要的是鍵名和值完全一致的時候才刪除一個的話,似乎不能,因為鍵名是不允許重復的
聽你的情況似乎數(shù)據(jù)量很大,建議你使用
array_flip()函數(shù)
【php中,刪除數(shù)組中重復元素有一個可用的函數(shù),那就是array_unique(),
但是它并不是一個最高效的方法,使用array_flip()函數(shù)將比array_uniqure()在速度上高出五倍左右?!?/p>
例子:$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頁面上放一個刪除數(shù)據(jù)庫重復數(shù)據(jù)的功能按鈕,就是使用PHP操作數(shù)據(jù)庫刪除重復數(shù)據(jù)的SQL語句,然后重新查詢綁定輸出。
如果是PHP操作數(shù)據(jù)庫不明白的話,就找PHP操作數(shù)據(jù)庫這篇內(nèi)容來看。
如果是用SQL語句來刪除數(shù)據(jù)庫重復數(shù)據(jù)不明白的話就找SQL刪除重復數(shù)據(jù)這方面的內(nèi)容。
如果你要具體的實現(xiàn)代碼,不好意思,幫不了你,這需要你自己找,自己實現(xiàn)。這是程序員必備的技能。
首先,我看到這個問題中描述是“如何刪除兩個數(shù)組中相同的元素”,雖然那個人寫了一大堆,竟然用的是array_unique(),從分析到給出的demo一直在解決如何刪除“一個”數(shù)組中“重復”的元素。汗!答非所問的答案竟然會被采納。
這里,簡單分析一下提問者的真實意圖,分以下2種情況:
1.現(xiàn)在有2個一維數(shù)組, $arr1和$arr2,現(xiàn)在要刪除 $arr1 中存在于 $arr2 的元素。
解決方案:使用array_diff對比返回在 array1 中但是不在 array2 及任何其它參數(shù)數(shù)組中的值,代碼如下:
?php
$arr1?=?array(1,?2,?3,?4);
$arr2?=?array(2,?4);
//這一句即可
$arr1?=?array_diff($arr1,$arr2);
var_dump($arr1);
2.先聲明一下,我看了lt318025大神給出的答案,他的思維非?;钴S,已經(jīng)分了2種情況。
現(xiàn)在有2個一維數(shù)組,$a和$b,即刪除$a中存在于$b的元素,刪除$b中$a存在的元素,組后合并返回。
可是lt318025大神用的PHP版本太高,給出的demo在低版本PHP下運行失敗,這里修正一下:
?php
$a=array(1,2,3);
$b=array(2,3,4);
//得到存在于$a但不存在于$b中的元素組成的數(shù)組
$c=array_diff($a,$b);
//這里簡單求出在$a但不在$b中的元素
var_dump($c);
//得到存在于$a但不存在于$b中的元素組成的數(shù)組與存在于$b但不存在于$a中的元素組成的數(shù)組的并集
$d=array_merge(array_diff($a,$b),array_diff($b,$a));
//這里徹底剔除了同時存在于$a和$b中的元素
var_dump($d);
究竟是哪一種情況,這需要看提問者的需求了。