我正在尝试从数组中删除重复的值,下面的数组是我需要修改的:
Array
(
[0] => Array
(
[brand] => Array
(
[milestone] => Milestone
)
)
[1] => Array
(
[brand] => Array
(
[axis] => Axis
[milestone] => Milestone
)
)
[2] => Array
(
[brand] => Array
(
[axis] => Axis
)
)
)
最终结果应该是这样:
Array
(
[0] => Array
(
[axis] => Axis
)
[1] => Array
(
[milestone] => Milestone
)
)
这是我目前所拥有的,但是它不起作用。
foreach( $out_product_brands as $p_brands )
{
foreach( $p_brands as $brands )
{
$brand[] = $brands;
}
}
print_r($brand);
请给我一些帮助。
答案 0 :(得分:1)
如果要删除重复的密钥,这是您需要的代码:
$allKeys = [];
$result = [];
foreach($brand as $index => $rec) {
$newRec = []
foreach($rec['brand'] as $key => $val) {
if(!isset($allKeys[$key])) {
$newRec[$key] = $val;
$allKeys[$key] = $val;
}
}
if(count($newRec)) {
$result[] = $newRec;
}
}
如果只想删除重复的值,这会更加复杂,则需要指定逻辑-如何处理具有不同值的重复键。