从group_concat获取查询之后我有逗号分隔的数组索引键,如(name)和(id)
git submodule update --init --recursive --remote
但是我们使用了漏洞函数来创建逗号分隔值的数组
我有两个像这样的数组
[name] = new,game
[id] = 1,2
使用数组映射函数后,我得到了最终数组
$array1 = array('0' => 'news', '1' => 'game');
Array
(
[0] => news
[1] => game
)
$array2 = array('0' => '1', '1' => '2');
Array
(
[0] => 1
[1] => 2
)
但我需要这样的最终数组
$array3 = array_map(null, $array1, $array2);
$array3 = array(array('0'=>'new', '1'=>'1'),array('0'=>'game', '1'=>'2'));
Array
(
[0] => Array
(
[0] => new
[1] => 1
)
[1] => Array
(
[0] => game
[1] => 2
)
)
我已经尝试过循环和不同的数组函数
答案 0 :(得分:0)
我是从array3
-
$array3 = array(array('0'=>'new', '1'=>'1'),array('0'=>'game', '1'=>'2'));
$result = array();
foreach($array3 as $key=>$value){
$result[$key]["name"] = $value[0];
$result[$key]["id"] = $value[1];
}
print_r($result);
答案 1 :(得分:0)
@ Sohel0415答案的替代方案:
<?php
$array3 = array(array('0'=>'new', '1'=>'1'),array('0'=>'game', '1'=>'2'));
$result = array_map(function($a) {
return ["name" => $a["0"], "id" => $a["1"]];
}, $array3);
print_r($result);
但是,如果我理解正确,您可以从$name = ["game", "new"];
和
$id = ["1", "2"];
开始。如果我是对的:
<?php
$name = ["game", "new"];
$id = ["1", "2"];
$r = array_map(function($a1, $a2) {
return ["name" => $a1, "id" => $a2];
},$name, $id);
print_r($r);
达到预期的效果。