2016-04-28 8 views
1

私のコントローラでクエリを実行していて、私のビューで総コストを出力しています。ラーベール配列出力

HERESに私のクエリ:

$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() 
      ); 

がHERESに私の出力:

{{ $stat['TotalCost'] }} 

しかし、私はエラーを取得しています:

htmlentities() expects parameter 1 to be string, object given (View: F:\view.blade.php)

+0

てみが得る '追加する

{{ $stat['TotalCost'] }} 

変更あなたのクエリを維持するために()' '後の最初の()' - '.. .first() - > get() ' –

答えて

2

あなたは上記のエラーを取得している理由は、クエリがObjectを返しているためです。このことができます

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

希望:あなたはLaravelの組み込みsum()方法を使用するようにクエリを変更することができ

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

または:あなたはどちらか

はこれを回避するために行うことができます!

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

0

変更それは

$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(); 
     );