我不是要求你为我编写代码。任何方向都会受到赞赏。
我有一个以下格式的数组:
Array
(
[0] => Array
(
[title] => Here is the first title
[count] => 765
[description] => Description
)
[1] => Array
(
[title] => The second title
[count] => 90
[description] => Description
[other] => Data
)
[2] => Array
(
[title] => A third title
[count] => 1080
[description] => Description
)
)
我想知道如何使用'title'和'count'数据将其转换为类似下面的内容。
Array
(
[Here is the first title] => 765
[The second title] => 90
[A third title] => 1080
)
目前我已经创建了以下代码:
$results = array();
foreach ($inputarray as $value) {
$results[] = $value["count"];
}
这给了我以下内容:
Array
(
[0] => 765
[1] => 90
[2] => 1080
)
但我不确定如何使标题数据成为其关联计数数据的新密钥。有没有这样做的功能?可以对上述内容进行修改还是更复杂?谢谢你的帮助。
答案 0 :(得分:0)
使用标题显式填充新数组的键:
$results = array();
foreach ($inputarray as $value) {
$results[$value["title"]] = $value["count"];
}
请注意,任何具有相同标题的条目都将覆盖前一个条目,因为数组键必须是唯一的。我怀疑这是实现目标的最佳方式,但这就是你所要求的。
答案 1 :(得分:0)
可以采用的方法是使用array_reduce和一个闭包(需要PHP 5.3 +)
$res = array_reduce($array, function (&$results, $v){
$results[$v["title"]] = $v["count"];
}, array());