php頁面上放一個(gè)刪除數(shù)據(jù)庫重復(fù)數(shù)據(jù)的功能按鈕,就是使用PHP操作數(shù)據(jù)庫刪除重復(fù)數(shù)據(jù)的SQL語句,然后重新查詢綁定輸出。
創(chuàng)新互聯(lián)主要從事成都網(wǎng)站建設(shè)、成都網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)大安,十余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108
如果是PHP操作數(shù)據(jù)庫不明白的話,就找PHP操作數(shù)據(jù)庫這篇內(nèi)容來看。
如果是用SQL語句來刪除數(shù)據(jù)庫重復(fù)數(shù)據(jù)不明白的話就找SQL刪除重復(fù)數(shù)據(jù)這方面的內(nèi)容。
如果你要具體的實(shí)現(xiàn)代碼,不好意思,幫不了你,這需要你自己找,自己實(shí)現(xiàn)。這是程序員必備的技能。
( )利用php提供的函數(shù) array_unique和array_diff_assoc來實(shí)現(xiàn)
復(fù)制代碼 代碼如下: ?php function FetchRepeatMemberInArray($array) { // 獲取去掉重復(fù)數(shù)據(jù)的數(shù)組 $unique_arr = array_unique ( $array ); // 獲取重復(fù)數(shù)據(jù)的數(shù)組 $repeat_arr = array_diff_assoc ( $array $unique_arr ); return $repeat_arr; } // 測(cè)試用例 $array = array ( apple iphone miui apple orange orange ); $repeat_arr = FetchRepeatMemberInArray ( $array ); print_r ( $repeat_arr ); ?
( )自己寫函數(shù)實(shí)現(xiàn)這個(gè)功能 利用兩次for循環(huán)
復(fù)制代碼 代碼如下: lishixinzhi/Article/program/PHP/201311/20965
首先,我看到這個(gè)問題中描述是“如何刪除兩個(gè)數(shù)組中相同的元素”,雖然那個(gè)人寫了一大堆,竟然用的是array_unique(),從分析到給出的demo一直在解決如何刪除“一個(gè)”數(shù)組中“重復(fù)”的元素。汗!答非所問的答案竟然會(huì)被采納。
這里,簡(jiǎn)單分析一下提問者的真實(shí)意圖,分以下2種情況:
1.現(xiàn)在有2個(gè)一維數(shù)組, $arr1和$arr2,現(xiàn)在要?jiǎng)h除 $arr1 中存在于 $arr2 的元素。
解決方案:使用array_diff對(duì)比返回在 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個(gè)一維數(shù)組,$a和$b,即刪除$a中存在于$b的元素,刪除$b中$a存在的元素,組后合并返回。
可是lt318025大神用的PHP版本太高,給出的demo在低版本PHP下運(yùn)行失敗,這里修正一下:
?php
$a=array(1,2,3);
$b=array(2,3,4);
//得到存在于$a但不存在于$b中的元素組成的數(shù)組
$c=array_diff($a,$b);
//這里簡(jiǎn)單求出在$a但不在$b中的元素
var_dump($c);
//得到存在于$a但不存在于$b中的元素組成的數(shù)組與存在于$b但不存在于$a中的元素組成的數(shù)組的并集
$d=array_merge(array_diff($a,$b),array_diff($b,$a));
//這里徹底剔除了同時(shí)存在于$a和$b中的元素
var_dump($d);
究竟是哪一種情況,這需要看提問者的需求了。