Php 多维数组的数据合并
我有这种数组Php 多维数组的数据合并,php,multidimensional-array,Php,Multidimensional Array,我有这种数组 Array ( [0] => Array ( [id] => 1 [name] => PeopleOne [address] => AddressOneOfPeopleOne [1] => Array ( [id] => 2 [name] => PeopleTwo
Array ( [0] => Array ( [id] => 1
[name] => PeopleOne
[address] => AddressOneOfPeopleOne
[1] => Array ( [id] => 2
[name] => PeopleTwo
[address] => AddressOneOfPeopleTwo
[2] => Array ( [id] => 3
[name] => PeopleThree
[address] => AddressOneOfPeopleThree
[3] => Array ( [id] => 4
[name] => PeopleOne
[address] => AddressTwoOfPeopleOne
我想要这种格式
Array ( [0] => Array ( [id] => 1
[name] => PeopleOne
[address] => Array(
[0] => AddressOneOfPeopleOne
[1] => AddressTwoOfPeopleOne
)
[1] => Array ( [id] => 2
[name] => PeopleTwo
[address] => AddressOneOfPeopleTwo
[2] => Array ( [id] => 3
[name] => PeopleThree
[address] => AddressOneOfPeopleThree
我不知道该怎么办?
有人能解决这个问题吗?我假设您的数组名为$array
foreach ($array as $subArray) {
if (!is_array($subArray['address']) {
$subArray['address'] = array($subArray['adress']);
}
$subArray['address'][] = 'AddressTwoOfPeopleOne';
}
我假设您的数组名为$array
foreach ($array as $subArray) {
if (!is_array($subArray['address']) {
$subArray['address'] = array($subArray['adress']);
}
$subArray['address'][] = 'AddressTwoOfPeopleOne';
}
我有一种感觉,这并不是你想要的,但我不完全确定最终阵列中需要什么。至少从一开始,情况如何
<?php
$array = array(
array('id' => 1, 'name' => 'PeopleOne', 'address' => 'Address1'),
array('id' => 2, 'name' => 'PeopleTwo', 'address' => 'Address2'),
array('id' => 3, 'name' => 'PeopleOne', 'address' => 'Address3')
);
foreach ($array as $k => $v) {
$newarray[$v['name']][] = $v['address'];
}
echo '<pre>'.print_r($array,1).'</pre>';
echo '<pre>'.print_r($newarray,1).'</pre>';
?>
我感觉这不是您想要的,但我不完全确定最终阵列中需要什么。至少从一开始,情况如何
<?php
$array = array(
array('id' => 1, 'name' => 'PeopleOne', 'address' => 'Address1'),
array('id' => 2, 'name' => 'PeopleTwo', 'address' => 'Address2'),
array('id' => 3, 'name' => 'PeopleOne', 'address' => 'Address3')
);
foreach ($array as $k => $v) {
$newarray[$v['name']][] = $v['address'];
}
echo '<pre>'.print_r($array,1).'</pre>';
echo '<pre>'.print_r($newarray,1).'</pre>';
?>
请澄清您的问题。我搞不懂你在用什么样的数组结构。至少添加一些结束括号,这样我们就可以试着弄清楚你们想要什么。重复的问题。请参阅并澄清您的问题。我搞不懂你在用什么样的数组结构。至少添加一些结束括号,这样我们就可以试着弄清楚你们想要什么。重复的问题。看,好的。。。我想通过在php中循环来更新该数组,并希望以后的格式。。我不知道如何循环和更新。好的。。。我想通过在php中循环来更新该数组,并希望以后的格式。。我不知道如何循环和更新。你的答案对我有帮助。你的回答对我有帮助。太赫兹