最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP輸出數(shù)組中重名的元素的幾種處理方法

 更新時間:2012年09月05日 22:54:03   作者:  
PHP輸出數(shù)組中重名的元素的幾種處理方法,需要的朋友可以參考下
1.可以直接用php的內(nèi)置函數(shù)array_intersect()
array array_intersect ( array $array1 , array $array2 [, array $ ... ] )
array_intersect() 返回一個數(shù)組,該數(shù)組包含了所有在 array1 中也同時出現(xiàn)在所有其它參數(shù)數(shù)組中的值。注意鍵名保留不變。
代碼:
復(fù)制代碼 代碼如下:

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

輸出結(jié)果:
Array( [a] => green [0] => red)
2.也可以自己寫一個算法:
復(fù)制代碼 代碼如下:

<?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));
?>

輸出結(jié)果:
array(2) {
[3]=>
string(3) "red"
[5]=>
string(4) "pink"
}
3.還可以這么寫:
復(fù)制代碼 代碼如下:

<?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/>";
?>

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

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

代碼:
復(fù)制代碼 代碼如下:

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

上式把多維數(shù)組轉(zhuǎn)化成字符串,然后利用expode函數(shù)轉(zhuǎn)化成一維數(shù)組即可。

聯(lián)想一下,數(shù)據(jù)庫返回某一字段重名的值也是這個道理,當(dāng)然通過sql語句也能夠?qū)崿F(xiàn)。

相關(guān)文章

  • centos下file_put_contents()無法寫入文件的原因及解決方法

    centos下file_put_contents()無法寫入文件的原因及解決方法

    下面小編就為大家?guī)硪黄猚entos下file_put_contents()無法寫入文件的原因及解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • php+redis實現(xiàn)注冊、刪除、編輯、分頁、登錄、關(guān)注等功能示例

    php+redis實現(xiàn)注冊、刪除、編輯、分頁、登錄、關(guān)注等功能示例

    這篇文章主要介紹了php+redis實現(xiàn)注冊、刪除、編輯、分頁、登錄、關(guān)注等功能,結(jié)合實例形式分析了php+redis項目開發(fā)中常用的注冊,刪除,編輯,分頁,登錄,關(guān)注功能相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2017-02-02
  • php之性能優(yōu)化案例

    php之性能優(yōu)化案例

    這篇文章主要介紹了php之性能優(yōu)化案例,本文通過多個案例和多種場景下講述了如何對php腳本進(jìn)行性能上的優(yōu)化,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • 詳解php中流行的rpc框架

    詳解php中流行的rpc框架

    如果用一句話概括RPC就是:遠(yuǎn)程調(diào)用框架(Remote Procedure Call)。遠(yuǎn)程調(diào)用意思就是:被調(diào)用方法的具體實現(xiàn)不在程序運行本地,而是在別的某個遠(yuǎn)程地方。
    2021-05-05
  • 用mysql內(nèi)存表來代替php session的類

    用mysql內(nèi)存表來代替php session的類

    mysql內(nèi)存表實現(xiàn)替換php session類,效果什么大家可以自己測試下。
    2009-02-02
  • php對象和數(shù)組相互轉(zhuǎn)換的方法

    php對象和數(shù)組相互轉(zhuǎn)換的方法

    這篇文章主要介紹了php對象和數(shù)組相互轉(zhuǎn)換的方法,通過兩個自定義函數(shù)實現(xiàn)對象與數(shù)組的相互轉(zhuǎn)換功能,非常簡單實用,需要的朋友可以參考下
    2015-05-05
  • PHP中單引號與雙引號的區(qū)別分析

    PHP中單引號與雙引號的區(qū)別分析

    在PHP中,我們可以使用單引號或者雙引號來表示字符串。不過我們作為開發(fā)者,應(yīng)該了解其中的區(qū)別。單引號與雙引號對于定義字符一個是可以解析變量一個是會把變量直接輸出來,同時單引號與雙引號在字符處理上單引號要優(yōu)與雙引號
    2014-08-08
  • php修改時間格式的代碼

    php修改時間格式的代碼

    php修改時間格式的代碼,需要的朋友可以參考下。
    2011-05-05
  • PHP實現(xiàn)的簡單緩存類

    PHP實現(xiàn)的簡單緩存類

    這篇文章主要介紹了PHP實現(xiàn)的簡單緩存類,實例分析了php緩存文件的定義及使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • 分享一個超好用的php header下載函數(shù)

    分享一個超好用的php header下載函數(shù)

    這篇文章主要為大家分享一個超好用的php header下載函數(shù),需要的朋友可以參考下
    2014-01-01

最新評論

文昌市| 邛崃市| 千阳县| 鄂托克前旗| 民勤县| 丘北县| 抚顺县| 稷山县| 枣庄市| 肥东县| 湘潭县| 望谟县| 山西省| 苍山县| 金溪县| 哈尔滨市| 西充县| 云龙县| 常德市| 子洲县| 安宁市| 政和县| 绥化市| 宁陕县| 兰考县| 尚志市| 墨脱县| 龙川县| 清徐县| 日照市| 沽源县| 邹城市| 大化| 历史| 淮南市| 赤壁市| 昆明市| 五华县| 沅陵县| 鄯善县| 鄂伦春自治旗|