【发布时间】:2022-01-12 11:14:12
【问题描述】:
我有一个名为 $data 的以下关联数组。这是一些相同的键值对
Array
(
[0] => Array
(
[id] => 1
[config_id] => 31
[language] => "English"
)
[1] => Array
(
[id] => 2
[config_id] => 33
[language] => "English"
)
[2] => Array
(
id] => 3
[config_id] => 32
[language] => "French"
)
)
我想将此数组转换为
Array
(
["English"] => Array(
[0]=> Array
(
[id] => 1
[config_id] => 31
)
[1] => Array
(
[id] => 2
[config_id] => 33
)
)
["French"] =>
Array(
[0]=> Array
(
[id] => 3
[config_id] => 32
)
)
)
)
我需要语言作为输出数组中的键,谁能帮我解决这个问题?提前致谢。 我尝试了以下代码,但只打印了最后一个数组值
$arry = array();
foreach ($data as $val) {
$arry[$val->language]["id"] = $val->id;
$arry[$val->language]["config_id"] = $val->config_id;
}
【问题讨论】:
-
你卡在哪里了?你试过什么?这里和其他地方有很多关于操作数组的信息和以前的问题。我们很乐意帮助人们,但您通常需要表现出善意的尝试,首先要自己弄清楚。我们是志愿者,这是我们的空闲时间,如果可以通过一些先前的研究和努力来解决问题,我们不需要解决问题。 “任何人都可以帮助我”不是关于 SO 的有效问题 - 您需要针对实际编码问题提出具体/关注的问题,而不仅仅是要求其他人为您编写所有内容。
-
@ADyson 抱歉,我参考了之前的问题并尝试了一些代码,但只打印了最后一个数组值,这就是为什么我不愿发布尝试过的代码
-
你应该总是发布你的尝试,不要犹豫。这很有帮助,因为 a) 它表明您在寻求他人帮助之前确实自己尝试过,并且 b) 在许多情况下,代码几乎是正确的,只需要一个小修复——这正是这里最终发生的事情。这比有人从一开始就重写它更有效率。它还创建了一个更集中的问题,这可能对未来遇到相同问题的人更有帮助。 :-)
标签: php arrays associative-array