国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

php學(xué)習(xí)之兩種方法使用比較數(shù)組差異的array_diff()函數(shù)

2024-09-04 11:49:48
字體:
供稿:網(wǎng)友

本篇文章將簡單介紹php比較兩個數(shù)組的差異array_diff()函數(shù),感興趣的朋友可以了解一下。

php內(nèi)置函數(shù)中有一個array_diff():意思比較兩個數(shù)組的鍵值,并返回差集。

下面是通過數(shù)組遍歷來實現(xiàn)差集:

首先有兩個不同的數(shù)組$arr_1,$arr_2:

第一種方法:

  1. function fun($arr_1,$arr_2
  2.  
  3. {       foreach ($arr_1 as $key => $val
  4.  
  5.       {              $bool = false;              foreach ($arr_2 as $k => $v
  6.  
  7.              {                   if($bool = ($val == $v)) 
  8.  
  9.                   {                           break
  10.  
  11.                    } 
  12.  
  13.              }             if(!$bool
  14.  
  15.             {                 $diff[$key] = $val
  16.  
  17.              } 
  18.  
  19.        } 
  20.  

這種雖然能夠?qū)崿F(xiàn)數(shù)組間的差異,如果數(shù)組長度達(dá)到一定的長度后,效率不容樂觀。

二種方法:

  1. foreach ($arr_1 as $key => $val
  2.  
  3. {    if(in_array($val,$arr_2)) 
  4.  
  5.     {        unset($arr_1[$key]); 
  6.  
  7.     } 
  8.  

這種方式在其他博客上說可以和array_diff()媲美。

三種方式:

通過"array_flip();"將arr_2數(shù)組鍵值反轉(zhuǎn)后,判斷arr_1數(shù)組中的值是否在arr_2的鍵中

  1. $arr_2 = array_flip($arr_2);foreach ($arr_1 as $key => $val
  2.  
  3. {    if(isset($arr_2[$val])) 
  4.  
  5.     {        unset($arr_1[$key]); 
  6.  
  7.     } 
  8.  

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 银川市| 黄平县| 栾川县| 嘉鱼县| 仙居县| 湖北省| 安阳县| 正宁县| 茌平县| 革吉县| 蕲春县| 建瓯市| 晋江市| 合川市| 江油市| 慈利县| 丹阳市| 和硕县| 沁阳市| 汉中市| 城固县| 盐山县| 长沙市| 杂多县| 郯城县| 普宁市| 余庆县| 丰原市| 喀什市| 南投县| 临泽县| 麻阳| 师宗县| 措勤县| 大冶市| 达孜县| 清水河县| 巴东县| 和硕县| 聂拉木县| 聂拉木县|