我有这样的陈述:
result:
0:{
commentContent:"foo"
}
1:{
commentContent:"bar"
}
我想在commentContent中添加结果数组的数量。这就是我想要的:
result:
0:{
commentContent:"foo0"
}
1:{
commentContent:"bar1"
}
此时此刻,我有:(字面意思不正确)
$commentList[0]['commentContent'] = $commentList[0]['commentContent']+'0';
$commentList[1]['commentContent'] = $commentList[1]['commentContent']+'1';
如何使用foreach在Laravel控制器中执行此操作?
答案 0 :(得分:0)
你需要在php中使用。(点)来连接:
$commentList[0]['commentContent'] = $commentList[0]['commentContent'].'0';
$commentList[1]['commentContent'] = $commentList[1]['commentContent'].'1';
OR
$commentList[0]['commentContent'] .= '0';
$commentList[1]['commentContent'] .= '1';
使用foreach循环:
foreach ($comment_list as $key=>$val) {
$comment_list[$key]['commentContent'] = $val['commentContent'] . $key;
}
答案 1 :(得分:0)
使用常用的foreach并将键附加到字符串
foreach ($commentList as $k => &$i)
$i['commentContent'] = $i['commentContent'] . $k;
答案 2 :(得分:0)
检查一下:
$result = [
0 => [
'commentContent' => 'foo'
],
1 => [
'commentContent' => 'bar'
]
];
foreach ($result as $index => &$array) {
foreach ($array as &$value) {
$value .= $index;
}
}
var_dump($result);
这将打印:
array (size=2)
0 =>
array (size=1)
'commentContent' => string 'foo0' (length=4)
1 => &
array (size=1)
'commentContent' => &string 'bar1' (length=4)
希望这有帮助。
答案 3 :(得分:0)
我认为更清洁的方法是使用laravel的集合来做到这一点。
$result = [
0 => [
'commentContent' => 'foo'
],
1 => [
'commentContent' => 'bar'
]
];
$updatedResult = collect($result)->map(function ($value, $key) {
return $value['commentContent'] . $key;
});
有关详细信息,请查看文档。