$a=array("a"=>"Cat","b"=>"Dog","c"=>"Cat");
从上面的数组我需要单独的值狗。如何从数组中获取唯一值? php中是否有任何功能?...
由于 拉维
答案 0 :(得分:3)
答案 1 :(得分:2)
$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);
答案 2 :(得分:1)
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)];
答案 3 :(得分:1)
尝试:
$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;
}
答案 4 :(得分:1)
使用以下功能似乎正在起作用&方便。
<?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
答案 5 :(得分:-1)
$a=array("a"=>"Cat","b"=>"Dog","c"=>"Cat");
$result = array_unique(a);
print_r($result);
尝试这个...