2012-02-11 2 views
6

У меня проблема с моим массивом PHP. Во-первых, у них есть массивы внутри этого массива, и я пытаюсь удалить дубликаты. Я сделал print_r моего массива и распечатать это ....PHP Удалить дубликаты из массива

Array (
    [0] => Array ([creditfeeid] => 318 [client] => Test 1 [adjustment] => 444.00 [issuedate] => 2012-02-10 20:27:00 [isrecurring] => No [comment] => 444 [commission] => 17.76) 
    [1] => Array ([creditfeeid] => 319 [client] => Test 1 [adjustment] => 333.00 [issuedate] => 2012-02-10 20:27:00 [isrecurring] => No [comment] => 333 [commission] => 9.99) 
    [2] => Array ([creditfeeid] => 320 [client] => Test 1 [adjustment] => 111.00 [issuedate] => 2012-02-10 20:27:00 [isrecurring] => No [comment] => 111 [commission] => 1.11) 
    [3] => Array ([creditfeeid] => 321 [client] => Test 1 [adjustment] => 222.00 [issuedate] => 2012-02-10 00:00:00 [isrecurring] => No [comment] => 111 [commission] => 2.22) 
    [4] => Array ([creditfeeid] => 292 [client] => Test 1 [adjustment] => 555.00 [issuedate] => 2012-01-25 13:04:43 [isrecurring] => Yes [comment] => 555 [commission] => 5.00) 
    [5] => Array ([creditfeeid] => 317 [client] => Test 2 [adjustment] => 666.00 [issuedate] => 2012-02-10 00:00:00 [isrecurring] => No [comment] => 666 [commission] => 39.96) 
) 

Я пытаюсь удалить дубликаты в [ «комментарий»], которые являются

Я работаю с unique_array и, похоже, не делает этого. Это то, что я пытался ....

foreach($array as $row){ 
if(array_unique($row['comment'])){ 
    continue; 
}else{ 
    echo $row['comment'] . "<br/>"; 
} 
} 

также

$array = array_unique($array); 

foreach($array as $row){ 

     echo $row['comment'] . "<br/>"; 
} 

Что я делаю неправильно? Является ли array_unique не ответом на мою проблему?

Спасибо заранее,

J

+0

какой дубликат вы хотите сохранить? – bozdoz

ответ

4

array_unique не является ответом на вашу проблему. Вместо этого учтите что-то вроде этого:

$new_array = Array(); 
foreach($old_array as $a) { 
    if(!isset($new_array[$a['comment']])) 
     $new_array[$a['comment']] = $a; 
} 
$new_array = array_values($new_array); 
+0

Удивительно, это сработало! Благодаря Kolink – user979331