PHP - 检查关联数组中的重复值

时间:2018-05-08 15:27:22

标签: php arrays laravel

我有一个关联的标头数组,如果有重复的值,我需要抛出异常:

Array
(
    [0] => Email
    [1] => Name
    [2] => Something
    [3] => Else
    [4] => Email
)

了解有两个或更多Email值的最佳方法是什么? array_values没有获得价值。我不想要array_unique,因为如果有倍数,我想要中止。

2 个答案:

答案 0 :(得分:1)

检查数组是否有重复项的一个选项是获取唯一值的计数。如果它与原始数组的计数不匹配,则有重复项。

$arr = array('Email','Name','Something','Else','Email');

if ( count( $arr ) !== count( array_unique( $arr ) ) ) echo "Some duplicates";

Doc:array_unique()

答案 1 :(得分:0)

如果您想以Laravel方式进行,可以使用Collection

collect($yourArray)->unique(); // will return the collection of unique values.

希望这有帮助