从 php 数组中删除重复项(不是 array_unique)

Lev*_*ili 2 php arrays sorting unique

我有一个像这样的数组:

Array(
    [0] => Array(
            [id] => 1
            [name] => name1
            [table] => warehouse)
    [1] => Array(
            [id] => 2
            [name] => name2
            [table] => warehouse)
    [2] => Array(
            [id] => 3
            [name] => name1
            [table] => kitchen)
    [3] => Array(
            [id] => 4
            [name] => name5
            [table] => kitchen)
)
Run Code Online (Sandbox Code Playgroud)

我想得到这个结果。array_unique 将不起作用,因为只有一个相同的值,并且我想仅使用名称进行排序。id 和表可以相同。

Array(
    [0] => Array(
            [id] => 1
            [name] => name1
            [table] => warehouse)
    [1] => Array(
            [id] => 2
            [name] => name2
            [table] => warehouse)
    [3] => Array(
            [id] => 4
            [name] => name5
            [table] => kitchen))
Run Code Online (Sandbox Code Playgroud)

小智 5

尝试这个

$data = Array(
    [0] => Array(
            [id] => 1
            [name] => name1
            [table] => warehouse)
    [1] => Array(
            [id] => 2
            [name] => name2
            [table] => warehouse)
    [2] => Array(
            [id] => 3
            [name] => name1
            [table] => kitchen)
    [3] => Array(
            [id] => 4
            [name] => name5
            [table] => kitchen)
);

$record = array();
$name = array();
foreach($data as $key=>$value){
   if(!in_array($value['name'], $name)){
      $name[] = $value['name'];
      $record[$key] = $value;
   }

}
print_r($record);
Run Code Online (Sandbox Code Playgroud)