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

首頁 > 語言 > PHP > 正文

PHP刪除數(shù)組重復(fù)元素函數(shù)

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

文章列出一三種刪除數(shù)組中重復(fù)元素函數(shù)與實例代碼,前二種是利用循環(huán)來判斷刪除重復(fù)的數(shù)組值,最后一種是比經(jīng)典的,利用了array_flip()的特性,把值變成鍵名,再返回重復(fù)鍵名就會丟失,實例代碼如下:

  1. function delsame(&$array)  
  2. {  
  3. $i = 0;  
  4. while(isset($array[$i]))  
  5. {  
  6. $j = $i + 1;  
  7. while(isset($array[$j]))  
  8. {  
  9. if($array[$i] == $array[$j]) //如果發(fā)現(xiàn)后面有重復(fù)的元素  
  10. {  
  11. delmember($array$j); //把它刪除  
  12. $j--; //重新檢查補(bǔ)上來的元素是否是重復(fù)的  
  13. }  
  14. $j ++;  
  15. //開源代碼Vevb.com 
  16. $i ++;  
  17. }  

刪除數(shù)組中重復(fù)元素的函數(shù),代碼如下:

  1. function delmember(&$array$id)  
  2. {  
  3. $size = count($array);  
  4. for($i = 0; $i <$size - $id - 1; $i ++)  
  5. {  
  6. $array[$id + $i] = $array[$id + $i + 1];  
  7. }  
  8. unset($array[$size - 1]);  

使用例子,代碼如下:

  1. $output = array(1, 2, 2, 'www.survivalescaperooms.com', 5, 4, 4, 4, 2, 7, 5, 9, 10);  
  2. delsame($output);  
  3. while(list($key$value) = each($output))  
  4. {  
  5. echo "$key:$value"."<br>";  
  6. }   
  7. //方法二,代碼如下: 
  8. function uniquearray($array
  9.  
  10.  
  11. // get unique elts as keys in assoc. array 
  12.  
  13. for ($i=0,$n=count($array, 1);$i<$n;$i ) 
  14.  
  15. $u_array[$array[$i]] = 1; 
  16.  
  17.  
  18.  
  19. // copy keys only into another array 
  20.  
  21. reset($u_array, 1); 
  22.  
  23. for ($i=0,$n=count($u_array, 1);$i<$n;$i ) { 
  24.  
  25. $unduplicated_array[] = key($u_array, 1); 
  26.  
  27. next($u_array, 1); 
  28.  
  29.  
  30. return $unduplicated_array
  31.  
  32.  
  33. //方法三,代碼如下: 
  34. $hills=array("first"=>"data1","second"=>"www.111cn.net","third"=>"data1"); //開源代碼Vevb.com 
  35.  
  36. $hills=array_flip($hills); //還原鍵名  
  37. $hills1=array_flip(array_flip($hills));//刪除重復(fù)  
  38. print_r( $hills1  ); 

array array_flip ( array trans ) 

array_flip() 返回一個反轉(zhuǎn)后的 array,例如 trans 中的鍵名變成了值,而 trans 中的值成了鍵名.

注意 trans 中的值需要能夠作為合法的鍵名,例如需要是 integer 或者 string,如果值的類型不對將發(fā)出一個警告,并且有問題的鍵/值對將不會反轉(zhuǎn).

如果同一個值出現(xiàn)了多次,則最后一個鍵名將作為它的值,所有其它的都丟失了.

array_flip() 如果失敗返回 false.

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 宽甸| 星子县| 恩平市| 富民县| 启东市| 丽水市| 新绛县| 麟游县| 宜城市| 达拉特旗| 灌阳县| 辛集市| 龙南县| 宕昌县| 育儿| 分宜县| 会昌县| 洮南市| 武邑县| 静乐县| 通道| 咸宁市| 东海县| 聊城市| 福清市| 新疆| 安龙县| 昭平县| 阳原县| 巴林左旗| 绍兴市| 盐源县| 玉龙| 安庆市| 叙永县| 乐至县| 海南省| 遂川县| 鄂尔多斯市| 邓州市| 汨罗市|