- 迭代操作
迭代操作
迭代操作可以对数据进行迭代操作
$select=Good::select("g.*")->order("rank desc");$select->each(function(Good $good ){$good->loadTags();$good->loadSku();$good->loadClick();});$data=$select->toArray('id,title')->cache()->page($page,$step);
子类型也支持迭代操作
下面是在数据结果集合里挑选字段为 r_ 开头的数据转化为OrderRefunds对象设置到refunds字段,同时进行迭代下面的可以仔细读下
$select=DB::select(OrderRefunds::table('o_r'))->fields("*",'o')->fields(OrderRefunds::fields(),'o_r','r')->join(Order::table('o'),'o.id=o_r.order_id');$data=$select->setRecord(Order::class)->setSubRecord('refunds','r',OrderRefunds::class,function(OrderRefunds $refunds){$refunds->moneyShow();})->each(function(Order $order){$order->loadGoods();$order->renderConst();$order->moneyShow();})->toArray('id,title')->page($page,$step)
上面同时演示了 结果转数组和二级缓存的使用
同时说明下OrderRefunds::table('or') 返回 o_r 的表名OrderRefunds::fields() 返回所有的字段->fields(OrderRefunds::fields(),'o_r','r')去o_r 中的字段 并添加上前缀r
上一篇:const 下一篇:record 更多方法
