搜索
系统检测到您的用户名不符合规范:

foreach循环嵌套履值

浏览:6239 发布日期:2017年05月17日 分类:业务逻辑
foreach循环嵌套履值 Indirect modification of overloaded element of think\paginator\driver\Bootstrap has no effect
代码
//两个表order ,order_goods
order_goods 写在另一个model下
$ordergoods=new OrderGoods();
$list=Db::name('order')
->alias('a')
->field($fields)
->join('kuaidi b','a.shipping_id=b.id','left')
->where($where)->order($order)->paginate(10,true,['query'=>$query]);
foreach ($list as $key=>$val){
$goods=$ordergoods->getOrderGoods('*',['order_id'=>$val['order_id'],'is_present'=>0]); //可正常获取值
$list[$key]['goods']=$goods;
}
return $list;

$list[$key]['goods']=$goods; TP5 报错;

以上求解决方案

最终解决方法

public function fetchAll($where,$fields='*',$order='order_id desc',$query=[])
{
$ordergoods=new OrderGoods();
$list=Db::name($this->table)
->alias('a')
->field($fields)
->join('kuaidi b','a.shipping_id=b.id','left')
->where($where)->order($order)->paginate(10,false,[
'query'=>$query
]);
$item='';
foreach($list as $value){
$item[]=$value;
}
// var_dump($item);
// exit;
if($item){
foreach ($item as &$val){
$goods=$ordergoods->getOrderGoods('*',['order_id'=>$val['order_id'],'is_present'=>0]);
$tak_status=$ordergoods->countGoods(['tak_status'=>['gt',0],'order_id'=>$val['order_id']]);
foreach ($goods as &$value)
{
$value['refund']=$ordergoods->refund_goods($val['order_id'],$value['id']);
$value['send']=$ordergoods->send_goods($value['tak_status']);
}
$val['goods']=$goods;
$val['tak_status']=$tak_status;
}
}
return ['list'=>$list,'item'=>$item];
}
list 用于分页
item 用于数据输出

附件 微信截图_20170517002653.png ( 44.89 KB 下载:92 次 )

收藏
deanty
积分:1791 等级:LV3
热点推荐
(追記) (追記ここまで)
最新更新

我们

合作

网站

信息

ThinkPHP 是一个免费开源的,快速、简单的面向对象的 轻量级PHP开发框架 ,创立于2006年初,遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业应用开发而诞生的。ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进,已经成长为国内最领先和最具影响力的WEB应用开发框架,众多的典型案例确保可以稳定用于商业以及门户级的开发。

AltStyle によって変換されたページ (->オリジナル) /