【问题标题】:Remove duplicates from multidimensional array using Foreach loop使用 Foreach 循环从多维数组中删除重复项
【发布时间】:2018-05-01 11:53:06
【问题描述】:

嗨,我是 php 的初学者,我想问一下如何使用 foreach 循环从多维数组中删除重复项。我必须在 print_r 部分中放入什么。

 while($row =mysqli_fetch_assoc($result3))
   {
        $nodecontainer {"id"} = ($row ["left_skill"]);

        foreach ($nodecontainer as $id => $leftskill)
        {
            print_r($nodecontainer);
        }

   }

【问题讨论】:

  • 在查询中,您可以使用DISTINCTGROUP BY 删除重复项。因此,请提供更多详细信息,例如输入查询,您目前得到什么结果?您的预期结果是什么?
  • 我的 left_skill 在表中有很多重复值我只想删除它的所有重复项

标签: php


【解决方案1】:

你可以这样做:-

$nodecontainer = [];//define array
while($row =mysqli_fetch_assoc($result3)){
  $nodecontainer[] = $row ["left_skill"]; //assign all values to array
}

$nodecontainer = array_unique($nodecontainer);//remove duplicate

print_r($nodecontainer); //check final array

注意:-顺便说一句,我建议您在查询中使用 DISTINCTGROUP BY 来删除重复项。然后在 PHP 结束时不需要做任何事情。

【讨论】:

  • 无论如何我可以将这个 {"id"} 保留在数组中并删除重复项吗?
【解决方案2】:

看起来很简单:将所有 id 值提取到自己的数组中,通过 array_unique 运行它:

$uniquePids = array_unique(array_map(function ($i) { return $i['id']; }, $holder));

【讨论】:

  • 如何在循环中使用它?
【解决方案3】:

如果要使用 PHP,请使用array_unique()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-26
    • 2021-10-24
    • 2014-05-26
    • 2012-12-14
    • 2021-02-16
    • 1970-01-01
    • 2017-02-23
    相关资源
    最近更新 更多