Php 从二维阵列中删除重复项
我有一个二维数组,我想从中删除重复项 var转储如下所示Php 从二维阵列中删除重复项,php,arrays,multidimensional-array,foreach,duplicate-removal,Php,Arrays,Multidimensional Array,Foreach,Duplicate Removal,我有一个二维数组,我想从中删除重复项 var转储如下所示1=>abc.com。2=>acc.com,3=>abc.com所以我想删除第二个出现的abc.com,也就是我想删除3=>abc.com 我尝试使用嵌套循环,但代码不起作用 foreach ($var as $m) { foreach ($var as $s) { if(isset($m['Email'])){ if($m['E
1=>abc.com。2=>acc.com,3=>abc.com
所以我想删除第二个出现的abc.com,也就是我想删除3=>abc.com
我尝试使用嵌套循环,但代码不起作用
foreach ($var as $m)
{
foreach ($var as $s)
{
if(isset($m['Email'])){
if($m['Email'] == $s['Email']){
echo 'matched with '.$s['Email'];
echo '</br>';
unset($s);
//echo $v['Email'];
//echo "<br>";
}
}
}
}
foreach($var为$m)
{
foreach(var为$s)
{
如果(isset($m['Email'])){
如果($m['Email']=$s['Email'])){
回音“匹配”。$s[“电子邮件”];
回音“”;
未结算($s);
//echo$v['Email'];
//回声“
”;
}
}
}
}
我遗漏了什么吗?你可以用
编辑:这是来自的代码和输出
PHP
<?php
$input = array("1" => "abc.com", "2" => "acc.com", "3" => "abc.com");
$result = array_unique($input);
print_r($result);
?>
Edit2:要让它从特定列中删除重复项,只需使用
$output = array_intersect_key($input, array_unique(array_column($input, 'Email')));
其中,$input是完整的数组,“Email”是您希望从中删除重复项的列
编辑:这是来自的代码和输出
PHP
<?php
$input = array("1" => "abc.com", "2" => "acc.com", "3" => "abc.com");
$result = array_unique($input);
print_r($result);
?>
Edit2:要让它从特定列中删除重复项,只需使用
$output = array_intersect_key($input, array_unique(array_column($input, 'Email')));
其中,$input是完整的数组,“Email”是您希望从数组中删除重复项的列。\u unique($array)
嵌套的foreach中也有一个错误。假设您在上面发布了什么,您只需要一个foreach循环。如果需要添加第二个,则应基于正在设置的临时变量,例如foreach($row=>$key)。。您可以执行foreach($key as$item)
等等 array_unique($array)
嵌套的foreach中也有一个错误。假设您在上面发布了什么,您只需要一个foreach循环。如果需要添加第二个,则应基于正在设置的临时变量,例如foreach($row=>$key)。。您可以执行foreach($key as$item)
等等 如果您只想删除可以使用的副本
如果您只想删除可以使用的副本
使用我刚刚粘贴了我的数组的一个小片段,实际上我的数组包含的不仅仅是这些,比如电子邮件、Id、联系人号码等等,我只想检查电子邮件上的重复项,所以我不能使用这个功能,那么你要查找的代码中的内容将是:$output=array\u intersect\u key($input,array\u unique)(array\u列($input,“电子邮件”));谢谢,它说调用未定义的函数,在其他示例中,$item和$result是什么?我刚刚粘贴了我数组的一个小片段,实际上我的数组包含更多内容,如电子邮件、Id、联系人号码等,我只想检查电子邮件上的重复项,所以我无法使用此函数。如果您正在查找代码中的内容,则e:$output=array\u intersect\u key($input,array\u unique(array\u column($input,'Email'));谢谢,它说调用未定义的函数,在其他示例中,$item和$result是什么?