我想知道是否可以编辑正在处理的当前对象foreach
loop
我正在处理一系列对象$questions
我想在我的数据库中浏览并查找与该问题对象相关的答案。因此,对于每个问题,获取答案对象并更新当前的$question
inside my foreach
循环,这样我就可以在其他地方输出/处理。
foreach($questions as $question){
$question['answers'] = $answers_model->get_answers_by_question_id($question['question_id']);
}
有两种方法可以做到这一点
foreach($questions as $key => $question){
$questions[$key]['answers'] = $answers_model->get_answers_by_question_id($question['question_id']);
}
这样你就保存了密钥,这样你就可以在主程序中再次更新它$questions
多变的
or
foreach($questions as &$question){
添加&
将保留$questions
更新。但我想说第一个是推荐的,尽管它更短(见 Paystey 的评论)
Per the PHP foreach文档 http://php.net/manual/en/control-structures.foreach.php:
为了能够在循环内直接修改数组元素,请在 $value 之前加上 &。在这种情况下,该值将通过引用分配。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)