在数组中不应允许相同的电子邮件:
[
["first" => "John", "last" => "Snow","email" => "john@snow.com"],
["first" => "Sansa","last" => "Stark","email" => "sansa@stark.com"],
["first" => "Rob","last" => "Stark","email" => "john@snow.com"]
]
外部数组中可以有无限数量的数组类型元素。我应该迭代foreach
并使用一些临时变量来写email
还是有更有效的方法?
答案 0 :(得分:3)
您可以简单地检查原始数组元素的数量是否等于唯一电子邮件地址的数量(使用array_column()
和array_unique()
完成)。
if ( count($data) != count(array_unique(array_column($data, "email"))) ) {
echo "Multiple";
}
(假设数组位于$data
中)。
或者只是对/错...
echo count($data) != count(array_unique(array_column($data, "email")));