比较单个数组中的值并返回php中的键

时间:2015-06-02 18:01:31

标签: php arrays

我有一个这样的数组:

$age=array("Peter"=>43,"Ben"=>67);

该数组仅包含两个键值对。首先,我需要检查这两个键的值是否相同。如果相同则返回这两个值的键,否则返回false。所以这里的值43和67不相同所以它应该返回false。如果这两个值相同:

$age=array("Peter"=>43,"Ben"=>43);

它应该返回钥匙"彼得"和关键" Ben"并且可能将钥匙存放在另一个阵列中原因是如果两个人年龄相同,如果年龄相同,那么我想做其他几件事。我将感谢你的帮助。

1 个答案:

答案 0 :(得分:3)

只需获取唯一值并查看是否只有1:

if(count(array_unique($age)) === 1) {
     return array_keys($age);
} else {
     return false;
}

因为我很无聊,这里有两个人。

假设只有2个元素:

if(($v = array_values($age)) && $v[0] === $v[1]) {
     return array_keys($age);
} else {
     return false;
}

此外,应该使用倍数:

if((array_sum($age) % count($age)) === 0) {
     return array_keys($age);
} else {
     return false;
}