【发布时间】:2016-06-22 09:45:24
【问题描述】:
我正在尝试将多个数组合并为单个数组并使值唯一。
$array = array (
$array1 = array(
"id" => 205,
"firstName" => "NANCY GEORGE",
"gender" => "F",
"age" => 21,
"alert" => "bmi"
),
$array2 = array(
"id" => 205,
"firstName" => "NANCY GEORGE",
"gender" => "F",
"age" => 21,
"alert" => "bp"
),
$array3 = array(
"id" => 206,
"firstName" => "KUTAPPA.A.C",
"gender" => "M",
"age" => 31,
"alert" => "bmi"
)
);
这是我的预期输出,
$array = array (
'205' = array(
"id" => 205,
"firstName" => "NANCY GEORGE",
"gender" => "F",
"age" => 21,
"alert" => "bmi,bp"
),
'206' = array(
"id" => 206,
"firstName" => "KUTAPPA.A.C",
"gender" => "M",
"age" => 31,
"alert" => "bmi"
)
);
我正在尝试在 foreach 中合并数组以创建新数组,但它无法获得预期的结果。
【问题讨论】:
-
“它不工作”什么不工作?你还没有发布任何代码。循环遍历原始数组并检查新数组中是否已经存在具有相同 ID 的键,如果存在,则向
alert添加值,如果不向数组中添加项。 -
先搜索再询问。 Stackoverflow充满这样的问题和答案
-
..也许更重要的问题是为什么您拥有包含所有这些重复项的数据?如果您从数据库中获取此数据,为什么不能只使用
GROUP_CONCAT? -
您发布的预期输出不是有效的 PHP 代码。第二行应该是
'205' => array(。'206' = array(行也是如此。
标签: php