Как получить уникальное значение из массива?

$a=array("a"=>"Cat","b"=>"Dog","c"=>"Cat"); 

Из вышеприведенного массива мне нужно значение «Собака». как я могу получить уникальное значение из массива ?. есть ли какие-либо функции в php? …

Спасибо Рави

Related of "Как получить уникальное значение из массива?"

 $a = array("a"=>"Cat","b"=>"Dog","c"=>"Cat"); $counted = array_count_values($a); $result = array(); foreach($counted as $key => $value) { if($value === 1) { $result[] = $key; } } //$result is now an array of only the unique values of $a print_r($result); 
 function getArrayItemByValue($search, $array) { // without any validation and cheking, plain and simple foreach($array as $key => $value) { if($search === $value) { return $key; } } return false; } 

затем попробуйте использовать его:

 echo $a[getArrayitembyValue('Dog', $a)]; 

Попробуйте:

 $a = array("a"=>"Cat","b"=>"Dog","c"=>"Cat"); $aFlip = array_flip($a); $unique = array(); foreach ( array_count_values( $a ) as $key => $count ) { if ( $count > 1 ) continue; // $unique[ array_search($key) ] = $key; $unique[ $aFlip[$key] ] = $key; } 

Использование следующей функции, кажется, работает и удобно.

 <?php $array1 = array('foo', 'bar', 'xyzzy', 'xyzzy', 'xyzzy'); $dup = array_unique(array_diff_assoc($array1, array_unique($array1))); $result = array_diff($array1, $dup); print_r($result); ?> 

Вы можете увидеть его работу здесь – http://codepad.org/Uu21y6jf

 $a=array("a"=>"Cat","b"=>"Dog","c"=>"Cat"); $result = array_unique(a); print_r($result); 

Попробуй это…