2012-10-13 118 views
2

刪除重複的項目我有一個這樣的數組:你怎麼能由一個數組

$names = array('John Doe','Marc','Rudolph', 'John Doe','Steve', 'Marc'); 

我怎樣才能把用PHP中重複的名字?

新的數組必須是:

$names = array('John Doe','Marc','Rudolph','Steve'); 

什麼已經是做到這一點的功能?

回答

0

您可以使用array_unique但請注意,這將not workcase sensitive array

$names = array('John Doe','Marc','Rudolph','John doe','Steve','Marc'); 
         ^-- Capital     ^--Small  

如果運行

var_dump(array_unique($names)); 

輸出

array 
    0 => string 'John Doe' (length=8) 
    1 => string 'Marc' (length=4) 
    2 => string 'Rudolph' (length=7) 
    3 => string 'John doe' (length=8) 
    4 => string 'Steve' (length=5 

水溶液轉化一切不變的情況下,你檢查之前,如果它獨特的

var_dump(arrayUnique($names)); 

輸出

array 
    0 => string 'John Doe' (length=8) 
    1 => string 'Marc' (length=4) 
    2 => string 'Rudolph' (length=7) 
    4 => string 'Steve' (length=5) 

使用的功能

function arrayUnique($array) { 
    return array_intersect_key($array, array_unique(array_map("strtolower", $array))); 
}