首页 > 解决方案 > 检查php中数组中所有值的相等性

问题描述

我以这种方式检查 php 中数组中所有值的相等性。如果您可以编写更简单的方法,我无法在任何网页上找到如何执行此操作。

    $array = array(2, 2, 1);

    $first_value   = $array[0];
    $count_invoice = count($array);

    $i = 0;
    foreach ($array as $item) {
        if ($item == $first_value) {
            $i++;
        } else {
            // Not equal.
        }
    }

    if ($i == $count_invoice) {
        echo "Array equal.";
    } else {
        echo "Array not equal.";
    }

标签: phparrays

解决方案


没有必要计算任何东西。一旦你看到不等于的值$first_value,你就可以打破循环:

$array = array(2, 2, 2);
$first_value   = array_shift($array);
$allEquals = true;
foreach ($array as $item) {
    if ($item != $first_value) {
        $allEquals = false;
        break;
    }
}

if ($allEquals) {
    echo "Array equal.";
} else {
    echo "Array not equal.";
}

推荐阅读