php删除foreach中的重复值

php删除foreach中的重复值,php,foreach,Php,Foreach,我有一个foreach迭代器,里面有500个组项。如何删除foreach中的重复值 foreach ($data as $data) { if(!empty($data['name'])){ //check if have $data['name'] $name = $data['name']; $id = $data['id']; $date = $data['date']; $link = $data['link']; if(strpos($link, '.ads.')){ continu

我有一个foreach迭代器,里面有
500个组项
。如何删除foreach中的重复值

foreach ($data as $data) {
if(!empty($data['name'])){  //check if have $data['name']
$name = $data['name'];
$id = $data['id'];
$date = $data['date'];
$link = $data['link'];
if(strpos($link, '.ads.')){
continue; //remove all the link contains `.ads.`
}else{
// if `$link` is not repeat, echo the below data. how to use array_unique, remove all the values which repear in `$link` part? 
echo $name;
echo $id;
echo $date;
echo $link;
} 
}
与:

虽然从技术上讲,您可以使用相同的名称调用数组及其元素,但这必然会导致编程错误和以后的混淆。

使用:

虽然从技术上讲,您可以使用相同的名称调用数组及其元素,但这必然会导致编程错误和以后的混乱。

看看您在做什么:

foreach ($data as $data) 
您正在覆盖
$data
的内容,然后访问
$data
,而您希望它仍然是原始数组。那是错误的

再加上一个变量名,非常常见的是
$value

foreach ($data as $value)
希望这有帮助,即使它不能回答您的问题,但这可能是您问题的一部分,所以请小心;)

看看你在做什么:

foreach ($data as $data) 
您正在覆盖
$data
的内容,然后访问
$data
,而您希望它仍然是原始数组。那是错误的

再加上一个变量名,非常常见的是
$value

foreach ($data as $value)
希望这有帮助,即使它不能回答您的问题,但这可能是您问题的一部分,所以请小心;)

当我不得不从大量通过Ajax响应发送的类似电子邮件中选择唯一的电子邮件id时,我正在使用它…希望这能帮助你询问你是否理解任何地方的hv问题


当我不得不从大量通过Ajax响应发送的类似电子邮件中选择唯一的电子邮件id时,我正在使用它…希望这能帮助你询问你是否理解任何地方的hv问题。

你能显示一个重复值示例吗?你能显示一个重复值示例吗?+1。这里有一个指向文档的链接:@asah击败了你;)使用链接更新。在
foreach(array\u unique($data)as$d)中添加
array\u unique
{
只有一个数据返回。@yuli chika:在循环中,使用
$d
,而不是
$data
。请密切注意@phihag的建议:“虽然从技术上讲,您可以使用相同的名称调用数组及其元素,但这必然会导致编程错误和以后的混乱。”+1.这里有一个指向文档的链接:@asah best your to it;)更新了一个链接。添加
array\u unique
中的
foreach(array\u unique($data)as$d){
只有一个数据返回。@yuli chika:在循环中,使用
$d
,而不是
$data
。请密切注意@phihag的建议:“虽然从技术上讲,您可以使用相同的名称调用数组及其元素,但这必然会导致编程错误和以后的混乱。”