3 回答

TA貢獻1816條經(jīng)驗 獲得超4個贊
假設(shè)這是您輸入的最終格式。您可以使用array_map
解決方案
$data = array(
'text'=>array('icon_title_1' =>'Test 1','icon_title_2'=>'Test 2'),
'image'=>array('icon_file_1' => 'test.jpg','icon_file_2'=>'test2.jpg')
);
$func = function($text, $image){
return [
'text' => $text,
'image' => $image
];
};
var_dump(array_map($func, $data['text'], $data['image']));
輸出
array(2) {
[0]=>
array(2) {
["text"]=>
string(6) "Test 1"
["image"]=>
string(8) "test.jpg"
}
[1]=>
array(2) {
["text"]=>
string(6) "Test 2"
["image"]=>
string(9) "test2.jpg"
}
}

TA貢獻1878條經(jīng)驗 獲得超4個贊
對于您給定的輸入格式,您可以使用下面的代碼來獲得結(jié)果,假設(shè)內(nèi)部數(shù)組鍵格式如 icon_title_1、icon_title_2、icon_title_3 等。和 icon_file_1、icon_file_2 等。
$input = array(
'text'=>array(
'icon_title_1'=>'Test 1',
'icon_title_2'=>'Test 2'),
'image'=>array(
'icon_file_1'=>'test.jpg',
'icon_file_2'=>'test2.jpg')
);
$output = array();
$index = 0;
foreach($input as $key => $value){
foreach($value as $k => $v){
$indexPart = explode("_",$k);
$index = $indexPart[count($indexPart)-1];
$output[$index][$key] = $v;
}
}
print_r($output);

TA貢獻1845條經(jīng)驗 獲得超8個贊
您可以使用簡單的嵌套foreach循環(huán)轉(zhuǎn)換數(shù)組:
$result = array();
foreach ($array as $key => $arr) {
$i = 0;
foreach ($arr as $v) {
$result[$i++][$key] = $v;
}
}
print_r($result);
輸出:
Array
(
[0] => Array
(
[text] => Test 1
[image] => test.jpg
)
[1] => Array
(
[text] => Test 2
[image] => test2.jpg
)
)
- 3 回答
- 0 關(guān)注
- 123 瀏覽
添加回答
舉報