Php 创建唯一阵列

Php 创建唯一阵列,php,arrays,Php,Arrays,我有一个多维数组,比如 Array ( [0] => Array ( [id] => 1355698 [comment] => hello ) [1] => Array ( [id] => 1355699 [comment] => hey ) [2] => Array

我有一个多维数组,比如

Array
(
    [0] => Array
        (
            [id] => 1355698
            [comment] => hello
        )

    [1] => Array
        (
            [id] => 1355699
            [comment] => hey
        )

    [2] => Array
        (
            [id] => 1355700
            [comment] => hello
        )

)
id
始终是唯一的,因此元素的唯一性将基于子数组的
comment
值。在这种情况下,
数组[0]
有一个重复的
数组[2]
。(我想知道是否有更好的方式来表达这种解释)


array\u unique()
在这种情况下不起作用。还有别的选择吗?谢谢

创建一个id和注释为key=>value对的新数组,然后
array_unique()

像:
array(1344698=>“hello”,1355699,=>“hey”,1355700=>“hello”)
如果您最终使用此解决方案,您还可以方便地访问注释,而无需进行迭代。我相信这将回答您的问题:遵循Mark1inLA的答案,它将导致-该问题的公认答案应完全按照您的要求执行。来自的公认答案将使用注释作为数组键。我认为这不是解决这个问题的好办法,因为一条评论可能有数百个字符。
$uniqueArray = array();
foreach ($nonUniqueArray as $i) {
    $uniqueArray[$i['comment']] = $i;
}

// optionally:
// $uniqueArray = array_values($uniqueArray);

var_dump($uniqueArray);