我需要从$_POST['tags']
输出
$_POST = array('title' => 'apple','content' => 'fruit', 'tags' => array(0 => 1, 1 => 2, 2 => 11, 3 => 13));
我需要转换此部分
[tags] => Array ( [0] => 1 [1] => 2 [2] => 11 [3] => 13 ) )
采用以下格式,然后将其推回$_POST['tags']
[tags] => Array ( [0] => Array ( [tag_id] => 1 ) [1] => Array ( [tag_id] => 2 ) [2] => Array ( [tag_id] => 11 ) [3] => Array ( [tag_id] => 13 )
我已经尝试但它没有工作......
$returnArray['tags'] = array();
foreach($_POST['tags'] as $t)
{
$tags = array();
$tags['tag_id'] = $t['tag_id'];
array_push($returnArray['tags'], $tags);
}
unset($_POST['tags']);
$_POST['tags'] = array();
array_push($_POST['tags'] , $returnArray);
im on PHP Version 5.2.17
答案 0 :(得分:0)
使用array_map
并指定key
-
$new = array_map(function($v) {
return array('tag_id' => $v);
}, $_POST['tags']);
答案 1 :(得分:0)
你几乎拥有它
$returnArray['tags'] = array();
foreach($_POST['tags'] as $t)
{
$tags = array();
$tags['tag_id'] = $t;
array_push($returnArray['tags'], $tags);
}
$_POST['tags'] = $returnArray;