2011-12-21 123 views
1

測試輸入:狗,狗,貓,牛,狗,馬,貓,狗給定字符串的混合,生成一個只有唯一的數組。

有效輸出:狗,貓,牛,馬

也許不起眼的細節:這是一個電子郵件功能,我寫,其中部分列表與電子郵件地址相關聯,並且我想將所有轉到相同地址的所有部分「集合」在一起。使用PHP。我認爲解決測試案例會解決我的問題。

+0

謝謝大家,我沒有意識到array_unique(),(雖然我以前用過它......奇怪,它是如何工作的)。 – jason 2011-12-21 22:04:52

回答

4
$string = implode(', ', array_unique(array_filter(array_map('trim', explode(',', $string)))))); 

從內到外

  • 斯普利特在,
  • 刪除任何開頭和結尾的空白
  • 如果需要刪除任何空字符串
  • 只返回唯一的字符串
  • 破滅與,
2
$array = array ('dog', 'dog', 'cat', 'cow', 'dog', 'horse', 'cat', 'dog'); 

$uniqe_array = array_unique ($array); 

http://php.net/array_unique

另外:

$array = array(); 

$array['dog'] = 1; 
$array['cat'] = 2; 
$array['dog'] = 3; 

結果:狗= 3,貓= 2。非唯一值將覆蓋以前的索引。

相關問題