延伸到我的最后一个问题,我有一个如下所示的数组:
Array
(
[0] => Array
(
[id] => 1
[uid] => 746
[lid] => 748
)
[1] => Array
(
[id] => 6
[uid] => 746
[lid] => 744
)
[2] => Array
(
[id] => 11
[uid] => 749
[lid] => 743
)
)
我现在想要的是将值与相同的 uid 合并,输出为:
Array
(
[0] => Array
(
[id] => 1,6
[uid] => 746
[lid] => 748,744
)
[1] => Array
(
[id] => 11
[uid] => 749
[lid] => 743
)
)
这可能吗?不知道有没有什么功能。
最佳答案
如果您要将其插入数据库,请不要执行 this因为从长远来看,这会咬你一口。无论如何,没有内置函数可以执行此操作。您只需要一个简单的 foreach 循环。考虑这个例子:
$new_values = array();
$values = array(
array('id'=> 1, 'uid' => 746, 'lid' => 748),
array('id'=> 6, 'uid' => 746, 'lid' => 744),
array('id'=> 11, 'uid' => 749, 'lid' => 743),
);
foreach($values as $value) {
if(isset($new_values[$value['uid']])) {
$temp = $new_values[$value['uid']];
$temp['id'] .= ',' . $value['id'];
$temp['lid'] .= ',' . $value['lid'];
$new_values[$value['uid']] = $temp;
} else {
$new_values[$value['uid']] = $value;
}
}
$new_values = array_values($new_values); // reindex keys
关于php - 根据相同的键连接数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24470643/