为了账号安全,请及时绑定邮箱和手机立即绑定

php laravel foreach中动态增加循环元素

php laravel foreach中动态增加循环元素

PHP
当年话下 2019-03-18 18:11:51
请问下,原生php可以在循环的时候动态根据条件增加额外循环项,代码如下: $a = [1, 2, 3]; foreach($a as &$v){ if($v == 2){ $a[] = 7; } echo $v; } 最终输出的是1237,也就是额外多循环了一次;但是在laravel中,循环的是LengthAwarePaginator分页的东东,虽然可以动态增加元素,但是实际上没有循环到这个元素。 实际页面渲染后第21个元素asd没有循环出来,请问有什么方法可以解决嘛?我想到的是获取LengthAwarePaginator的items元素,然后手工弄成个数组形式的,但里面的元素还是保持模型对象(不然关系没法用了),可是这个items是protected属性,没法直接获取。。
查看完整描述

2 回答

?
HUWWW

TA贡献1874条经验 获得超12个赞

可以了,先循环一遍。。
https://img1.sycdn.imooc.com//5c8f6ee60001710704820287.jpg

查看完整回答
反对 回复 2019-03-18
?
慕标琳琳

TA贡献1830条经验 获得超9个赞

在模版里可能不行。

循环的变量体是通过AbstractPaginator类内的迭代器生成的。也就是说在循环时变量体就已经是确定的,在循环里改变不了。

查看完整回答
反对 回复 2019-03-18
  • 2 回答
  • 0 关注
  • 1264 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信