一个更普遍的算法是:
<?php
// SAMPLE DATA.
$arr = array("comments" => array(0 => array("2016-07-15 09:27 | From On Track to Done",
"2016-07-15 09:56 | From Done to On Track"
),
1 => array("111 | aaa",
"222 | bbb",
"333 | ccc"
)
),
"posts" => array(0 => array("2016-07-13 08:00 | bla bla bla",
"2016-07-13 08:30 | more bla bla bla"
),
1 => array("444 | xxx",
"555 | yyy",
"666 | zzz"
)
)
);
var_dump($arr); // ORIGINAL ARRAY.
$new = array();
foreach ($arr as $key => $category) // "COMMENTS", "POSTS", ...
{ for ($i = 0; $i < count($category); $i++) // 0, 1, ...
{ $values = implode($category[ $i ]," "); // MERGE STRINGS.
$new[ $key ][ $i ] = array($values);//WE CAN REMOVE "ARRAY" AND LEAVE ONLY "$VALUES".
}
}
var_dump($new); // NEW ARRAY.
?>
结果:
原始数组
array (size=2)
'comments' =>
array (size=2)
0 =>
array (size=2)
0 => string '2016-07-15 09:27 | From On Track to Done' (length=40)
1 => string '2016-07-15 09:56 | From Done to On Track' (length=40)
1 =>
array (size=3)
0 => string '111 | aaa' (length=9)
1 => string '222 | bbb' (length=9)
2 => string '333 | ccc' (length=9)
'posts' =>
array (size=2)
0 =>
array (size=2)
0 => string '2016-07-13 08:00 | bla bla bla' (length=30)
1 => string '2016-07-13 08:30 | more bla bla bla' (length=35)
1 =>
array (size=3)
0 => string '444 | xxx' (length=9)
1 => string '555 | yyy' (length=9)
2 => string '666 | zzz' (length=9)
新阵列
array (size=2)
'comments' =>
array (size=2)
0 =>
array (size=1)
0 => string '2016-07-15 09:27 | From On Track to Done 2016-07-15 09:56 | From Done to On Track' (length=81)
1 =>
array (size=1)
0 => string '111 | aaa 222 | bbb 333 | ccc' (length=29)
'posts' =>
array (size=2)
0 =>
array (size=1)
0 => string '2016-07-13 08:00 | bla bla bla 2016-07-13 08:30 | more bla bla bla' (length=66)
1 =>
array (size=1)
0 => string '444 | xxx 555 | yyy 666 | zzz' (length=29)
字符串值内爆用'implode'功能 –
安置自己的尝试与“array_merge和array_value和循环”的代码。你的代码会给我们一个起点。 –
兰德拉,如果下面的答案有用,你可以点击它的复选标记来接受它(这样你可以奖励人们的努力)。 –