检查相同的数组值

时间:2016-01-28 11:34:29

标签: php arrays

如果数组的内容相同或不是,我想查看一个语句。这对我来说实际上是一个挑战,但我无法检查数组中值的唯一性。

另外,我想确保值与"S"相同。示例数组:

$myArray = array("S", "S", "S");  // true
$myArray = array("S", "S", "s");  // false

是否可以使用单一声明?提前谢谢。

1 个答案:

答案 0 :(得分:2)

array_count_values可能。这是你在找什么?

函数array_count_values()将计算数组中唯一值的数量。如果你把它的数量计算为1,那就像你说的那样是唯一的。

count(array_count_values($myArray)) == 1

此外,您可以检查其中一个数组值是否是您想要检查的值。

$myArray[0] == "S"

因此,将这两者合并为一个条件:

count(array_count_values($myArray)) == 1 && $myArray[0] == "S"

这将返回truefalse

完整工作代码

<?php
    // Let's have two arrays.
    $myArray1 = array("S", "S", "S");  // Should return true
    $myArray2 = array("S", "S", "s");  // Should return false

    // Our function
    function checkArray($theArray, $value) {
      return count(array_count_values($myArray)) == 1 && $myArray[0] == $value;
    }

    // Checks
    checkArray($myArray1, "S"); // true
    checkArray($myArray2, "s"); // false