E' piuttosto semplice:
Codice PHP:
<pre>
<?php
$array = array();
$array[]['name'] = 'A';
$array[]['name'] = 'A';
$array[]['name'] = 'B';
$array[]['name'] = 'C';
$names = array();
foreach($array as $data) {
if (!in_array($data['name'], $names)) {
$names[$data['name']] = $data['name'];
}
}
function filter($var) {
global $names;
$return = isset($names[$var['name']]);
if ($return) {
unset($names[$var['name']]);
}
return $return;
}
$array = array_filter($array, 'filter');
print_r($array);
?>
</pre>
Per evitare la "porcata" di global $names; puoi sempre implementarlo all'intern di una classe.