我有这个数组:
$array[] = [
'a' => $a,
'b' => $b,
];
该数组包含 10 个条目,$a 可以多次使用相同的值,而我只需要其中一个条目来进行数据库插入。
我无法让 array_unique 正常工作,因为它抛出了
array to string conversion
尝试使用它时出错
$result = array_unique($array);
我现在做了一个小的 foreach 循环,感觉这样做是错误的:
$z = [];
foreach ($array as $x) {
if (@!in_array($x['a'],$z)) {
$z[] = $x['a'];
}
}
然后我使用 $z 进行插入。
有人能给我指出如何区分数组值的正确方向吗?
最佳答案
这应该适合你:
($result = array_unique($array);
这不起作用,因为你有一个多维数组!)
<?php
//Example data
$array[] = [
'a' => 1,
'b' => 1,
'c' => 1,
'd' => 2,
'e' => 2,
];
$array = array_map("array_unique", $array);
print_r($array);
?>
输出:
Array ( [0] => Array ( [a] => 1 [d] => 2 ) )
关于php - 获取具有不同值的数组的更优雅的方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27992158/