中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用PHP怎么輸出數組中重名的元素

發布時間:2020-12-28 16:31:41 來源:億速云 閱讀:159 作者:Leah 欄目:開發技術

利用PHP怎么輸出數組中重名的元素?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

1.可以直接用php的內置函數array_intersect()
array array_intersect ( array $array1 , array $array2 [, array $ ... ] )
array_intersect() 返回一個數組,該數組包含了所有在 array1 中也同時出現在所有其它參數數組中的值。注意鍵名保留不變。
代碼:

復制代碼 代碼如下:


<?php
$array1 = array("a" => "green", "red", "blue");
$array2 = array("b" => "green", "yellow", "red");
$result = array_intersect($array1, $array2);
?>


輸出結果:
Array( [a] => green [0] => red)
2.也可以自己寫一個算法:

復制代碼 代碼如下:


<?php
function my_array_same($a){
$b = array_unique($a);
$r = array_diff_key($a,$b);
echo "<pre>";
$k=var_dump(array_unique($r));
return $k;
}
$a = array("red", "green", "pink", "red", "yellow","pink", "red");
$r=my_array_same($a);
var_dump(array_unique($r));
?>


輸出結果:
array(2) {
[3]=>
string(3) "red"
[5]=>
string(4) "pink"
}
3.還可以這么寫:

復制代碼 代碼如下:


<?php
function my_array_intersect($arr1,$arr2){
for($i=0;$i<count($arr1);$i++){
$temp[]=$arr1[$i];
}
for($i=0;$i<count($arr1);$i++){
$temp[]=$arr2[$i];
}
sort($temp);
$get=array();
for($i=0;$i<count($temp);$i++){
if($temp[$i]==$temp[$i+1])
$get[]=$temp[$i];
}
return $get;
}
$array1 = array("green", "red", "blue");
$array2 = array("green", "yellow", "red");
echo "<pre>";
print_r(my_array_intersect($array1, $array2));
echo "<pre/>";
?>


如果是一維的數組,第三種算法比第一種快點.上述算法都適用于一維的數組,那么多維數組怎么查找相同的元素呢?

思路:可以把多維的數組轉化成一維的數組,然后再利用上述算法輸出。

代碼:

復制代碼 代碼如下:


function toarr($arr){ //對數組進行遞歸,以字符串形式返回
foreach ($arr as $k=>$v){
if (!is_array($v)) {
$str.=$v." ";
}
else{
$str.=toarr($v);
}
}
return $str;
}/*遞歸函數結束*/

看完上述內容,你們掌握利用PHP怎么輸出數組中重名的元素的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

洛川县| 屏东县| 来凤县| 河曲县| 青冈县| 正镶白旗| 龙山县| 原阳县| 新营市| 扶余县| 枞阳县| 丽江市| 叙永县| 房山区| 牟定县| 胶州市| 西乌珠穆沁旗| 鹤山市| 民勤县| 南京市| 阿坝县| 安多县| 鄂托克旗| 繁峙县| 武陟县| 台中县| 广河县| 山东| 周至县| 额敏县| 白朗县| 长沙县| 京山县| 哈尔滨市| 湘潭县| 九江县| 吉水县| 仙游县| 白山市| 罗城| 河源市|