PHP數(shù)組去除重復(fù)項(xiàng)有個內(nèi)置函數(shù)array_unique(),但是php的array_unique函數(shù)只適用于一維數(shù)組,對多維數(shù)組并不適用,不過你可以在二維數(shù)組中的值,用array_unique()即可。
綏中網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站開發(fā)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)公司從2013年開始到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)公司。
比如:
$array = array(array(1,1,2),array(2,3,4,3));
$temp_array = array();
foreach($array as $key=$value){
$temp_array[$key] = array_unique($value);
}
$array = $temp_array;
之前寫了一篇關(guān)于數(shù)組去重的文章,但是僅限于一維數(shù)組。下面的函數(shù)可以用于二維數(shù)組:
//二維數(shù)組去掉重復(fù)值
function array_unique_fb($array2D){foreach ($array2D as $v){$v = join(",",$v); //降維,也可以用implode,將一維數(shù)組轉(zhuǎn)換為用逗號連接的字符串
$temp[] = $v;}
$temp = array_unique($temp); //去掉重復(fù)的字符串,也就是重復(fù)的一維數(shù)組
foreach ($temp as $k = $v){$temp[$k] = explode(",",$v); //再將拆開的數(shù)組重新組裝}return $temp;}
如果你想保留數(shù)組的鍵值,可以用下面的函數(shù):
//二維數(shù)組去掉重復(fù)值 并保留鍵值
function array_unique_fb($array2D){foreach ($array2D as $k=$v){$v = join(",",$v); //降維,也可以用implode,將一維數(shù)組轉(zhuǎn)換為用逗號連接的字符串
$temp[$k] = $v;}$temp = array_unique($temp); //去掉重復(fù)的字符串,也就是重復(fù)的一維數(shù)組
foreach ($temp as $k = $v){$array=explode(",",$v); //再將拆開的數(shù)組重新組裝
$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];
大概就這樣啦。
方法一:
//二維數(shù)組去掉重復(fù)值function array_unique_fb($array2D){ foreach ($array2D as $v){ $v=join(',',$v); //降維,也可以用implode,將一維數(shù)組轉(zhuǎn)換為用逗號連接的字符串 $temp[]=$v; } $temp=array_unique($temp); //去掉重復(fù)的字符串,也就是重復(fù)的一維數(shù)組 foreach ($temp as $k = $v){ $temp[$k]=explode(',',$v); //再將拆開的數(shù)組重新組裝 } return $temp;}
方法二:
//二維數(shù)組去掉重復(fù)值,并保留鍵值function array_unique_fb($array2D){ foreach ($array2D as $k=$v){ $v=join(',',$v); //降維,也可以用implode,將一維數(shù)組轉(zhuǎn)換為用逗號連接的字符串 $temp[$k]=$v; } $temp=array_unique($temp); //去掉重復(fù)的字符串,也就是重復(fù)的一維數(shù)組 foreach ($temp as $k = $v){ $array=explode(',',$v); //再將拆開的數(shù)組重新組裝 //下面的索引根據(jù)自己的情況進(jìn)行修改即可 $temp2[$k]['id'] =$array[0]; $temp2[$k]['title'] =$array[1]; $temp2[$k]['keywords'] =$array[2]; $temp2[$k]['content'] =$array[3]; } return $temp2;}
//可以再froeach中寫一個if判斷,將id為2的na值壓入$arr數(shù)組如:
foreach($array??$key?=?$value){
if($value['id']==2){
$arr?=?$value['na'];
}???
}
這種方法應(yīng)該能滿足你的需求了吧