我有这个数组:
array(1) {
["comments"]=>
array(244) {
[113]=>
array(2) {
[0]=>
string(40) "2016-07-15 09:27 | From On Track to Done"
[1]=>
string(40) "2016-07-15 09:56 | From Done to On Track"
}
}
}
我想进入这个阵列:
array(1) {
["comments"]=>
array(244) {
[113]=>
array(1) {
[0]=>
string(80) "2016-07-15 09:27 | From On Track to Done
2016-07-15 09:56 | From Done to On Track"
}
}
}
我需要保留键[113]并合并值。 我需要所有注释只在一个数组中。 在这个例子中只有两条评论,但实际上还有更多。
我尝试使用array_merge,array_value和一个循环。我无法得到它。
答案 0 :(得分:0)
我不知道你的数组结构是什么,但简单的解决方案是:
$vals = implode("\n", $ar['comments'][113]);
$ar['comments'][113] = array();
$ar['comments'][113][] = $vals;
或更简单:
$ar['comments'][113] = array(implode("\n", $ar['comments'][113]));
答案 1 :(得分:0)
试试这个:
$array['comments'][113] = implode(' ', $array['comments'][113]);
答案 2 :(得分:0)
谢谢你的帮助!你是对的。这是内爆。
答案是:
foreach ($goals["comments"] as $key => $value) {
$goals['comments'][$key][0] = implode($value, "\n");
}
答案 3 :(得分:0)
更通用的算法是:
<?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)