数组中列的PHP唯一值

scr*_*ddy 0 php arrays unique

我有一个从我运行的SQL查询生成的数组.它看起来如下:

$arr[$i]['id'] = $id;
$arr[$i]['name'] = $name;
$arr[$i]['email'] = $email;
Run Code Online (Sandbox Code Playgroud)

如何从电子邮件列中获取唯一值?我很感激帮助.

Jul*_*ldy 12

最佳答案是:

array_unique(array_column($arr, 'email'))
Run Code Online (Sandbox Code Playgroud)


Gar*_*ker 8

使用MySQL中的DISTINCT方法在列中过滤它,或使用类似的东西

$uniqueEmails = array();
foreach($arr as $array)
{
    if(!in_array($array['email'], $uniqueEmails)
        $uniqueEmails[] = $array['email'];
}
Run Code Online (Sandbox Code Playgroud)


ksg*_*g91 5

从PHP 5.5开始,还提供了一个名为array_column()的新函数。您可以通过以下方式使用它:

$allEmails = array_column($arr, 'email');
$uniqueEmails = array_unique($allEmails);
Run Code Online (Sandbox Code Playgroud)

  • 这与行数无关。该论坛的目标是帮助人们了解他们所犯的错误,并提供帮助他们理解错误的解决方案。 (2认同)