// base array
$input = array("a" => "green", "red", "b" => "green", "blue", "red");
// clean array
$result = array_unique($input);
// get differences (duplicate keys)
$result = array_intersect($result, $input);
// clean up duplicate keys array
$result = array_unique($result);
this of course can be done in ONE pass, although you lose readability and therefor maintainability
// base array
$input = array("a" => "green", "red", "b" => "green", "blue", "red");
$result = array_unique(array_intersect(array_unique($input), $input));