2019-01-23 11:11:12 1293次浏览 1条回答 0 悬赏 20 金钱

$order_product_process = OrderProductProcess::find()->select(["order_product_process.*","remain"=>"order_product_process.planned_quantity-sum(pl.number) "])->joinWith(['productionLogs as pl','order'])->where(['order_product_process.name' => $name,'order.is_delivered' => 0])->groupBy("order_product_process.id")->orderBy("order_product_process.planned_quantity DESC")->all();
想取到remain的值,应该怎么取,如果加上asArray后$order_product_process[0]['remain']就可以取到,但是不加应该怎么取

补充于 2019-01-23 11:11

qqqqq.png

补充于 2019-01-23 13:38

我是这样解决的,以为可以直接有方法取

  • 回答于 2019-01-23 12:52 举报

    在 OrderProductProcess 内声明一个名为 remain 的属性试试看。

    class OrderProductProcess
    {
        public $remain;
        
        ...
    }
    
    echo $order_product_process[0]->remain;
    

    不加 asArray() 取不出来是因为 OrderProductProcess 内没有定义 remain 属性.

您需要登录后才可以回答。登录 | 立即注册
Alex_J
经理

Alex_J

注册时间:2018-08-02
最后登录:2022-08-15
在线时长:26小时42分
  • 粉丝2
  • 金钱925
  • 威望0
  • 积分1185

热门问题