拉拉维尔阵列输出



我正在控制器中执行查询,并在视图中输出总成本。

这是我的查询:

 $stat = array(
            'TotalCost' => DB::table('ORD_DETAIL')
                        ->select(DB::raw('SUM(OD_QTYORD * OD_QTYUNIT * OD_COSTPRICE) as TotalCost'))
                        ->where('OD_ORDER_NUMBER',$id)->first()
            );

这是我的输出:

{{ $stat['TotalCost'] }}

但是我收到错误:

htmlentities() 期望参数 1 是字符串,对象给定(查看: F:\view.blade.php)

您收到上述错误的原因是因为您的查询返回了一个Object

要解决此问题,您可以执行以下操作之一:

{{ $stat['TotalCost']->TotalCost }}

或者,您可以将查询更改为使用 Laravel 的内置sum()方法:

DB::table('ORD_DETAIL')
    ->where('OD_ORDER_NUMBER',$id)
    ->sum(DB::raw('OD_QTYORD * OD_QTYUNIT * OD_COSTPRICE'));

希望这有帮助!

将其更改为

{{ $stat['TotalCost']->TotalCost }}

要维护

{{ $stat['TotalCost'] }}

将查询更改为

 $stat = array(
        'TotalCost' => DB::table('ORD_DETAIL')
                    ->select(DB::raw('SUM(OD_QTYORD * OD_QTYUNIT * OD_COSTPRICE) as TotalCost'))
                    ->where('OD_ORDER_NUMBER',$id)->lists('TotalCost')->first();
        );

最新更新