PHP duplicar chaves em diferentes objects em matriz

Eu tenho uma matriz com uma série de objects e eu quero pesquisar através dos objects para comparar e remover duplicatas. Um exemplo da estrutura é:

Array ( [0] => stdClass Object ( [lrid] => 386755343029 [uu] => website.address.com ) [1] => stdClass Object ( [lrid] => 386755342953 [uu] => website.address.com ) ) 

Com a chave UU sendo um endereço de site e eu só quero mostrar a primeira versão em vez da duplicata. Qualquer ajuda seria muito apreciada.

 $sites = array(); foreach ($array as $object) { if (!array_key_exists($object->uu, $sites)) { $sites[$object->uu] = $object; } } 

Se você quiser uma “matriz normal”, use array_values() com $sites como argumento.

Se os objects forem idênticos, você pode simplesmente chamar array_unique ($ array);

http://us2.php.net/manual/en/function.array-unique.php

Se os objects forem diferentes, basta ter o mesmo ID, você pode implementar o método __toString () (nota dois sublinhados na frente) e ter retorno (string) $ this-> id; Isso fará com que a function array_unique (que molda para seqüência de caracteres) para chamar o método mágico que você implementou e obter apenas os ID do object.

Você pode ter que implementar o método mágico de qualquer maneira para garantir que array_unique não falhe quando tenta converter seus objects em strings, eu não lembro.