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.