2016-06-02 11 views
1

にカーボンLaravelメソッドを使用することはできません、私はこれが私のview.bladeにparamsは送信:私のコントローラでは、私は、現在の日付別の日付を取得私のコントローラでは、私のlaravelの.bladeビュー

$current_date = Carbon::now('Europe/Madrid'); 
$second_date = Carbon::create(2016, 6, 3, 00, 00, 00, 'Europe/Madrid'); 

この機能正常に動作します:

$current_date->lt($second_date) # true 

しかし、私のblade.php Laravelのレポートでこのエラー:efcb37f79f0e8cb86e0f747997c402d6f7026ada.phpラインで FatalErrorException 112:メンバ関数LTへ コール()文字列の

私はlaravelビューをデバッグし、LT()メソッドは、ここで何が起こっているのか、正しいカーボンオブジェクト

Carbon {#361 ▼ 
    +"date": "2016-06-03 00:00:00.000000" 
    +"timezone_type": 3 
    +"timezone": "Europe/Madrid" 
} 

を受け取りますか?

マイビューコード:

@foreach ($articles_rows as $articles_row) 
      @if($current_date->lt($articles_row['expiration_date'])) 
       <div class="row"> 
       ...show articles here 
       </div> 
      @endif 
@endforeach 

マイコントローラコード:ここで上

$articles_rows = array (

      array(
       'img_src'   => FuImg::asset('img/regalos-para-profesores.jpg'), 
       'img_alt'   => 'Regalos para profesores', 
       'expiration_date' => Carbon::create(2016, 6, 3, 00, 00, 00, 'Europe/Madrid'), 
       'class'   => 'teacher-gifts', 
       'articles'  => 
        # Articulos 
        FotiArticle::getList(array(
         'fields'  => 'article_id,name,group_id,group,price_pvp_currency,quantity,prices,stock_available', 
         'expand'  => 'group,prices', 
         'article_id' => '2829,186,2875,1728', 
         'order'  => 'PRICE', 
        )), 

      ), 

      array(
       'img_src'  => Img::asset('img/regalos-ocasiones-especiales.jpg'), 
       'img_alt'  => 'Ocasiones especiales', 
       'expiration_date' => Carbon::create(2016, 6, 2, 00, 00, 00, 'Europe/Madrid'), 
       'class'  => 'wedding', 

       'articles' => Article::getList(array(
         'fields'  => 'article_id,name,group,price_pvp_currency,quantity,prices,stock_available', 
         'expand'  => 'prices', 
         'article_id' => '1611,4481,50,5345', 
         'order'  => 'PRICE', 
       )), 
      ), 

     ); 
+0

あなたのビューコードを表示できますか? – huuuk

+0

私はブレードコードとコントローラコードでメインポストを編集していますが、少しのコード例があります。私は完全なコードで編集します。 –

+1

ここで '$ articles_row ['expiration_date']'は炭素のオブジェクトではありません、文字列です – Ali

答えて

3

問題はstringなくCarbonクラスのオブジェクトとして考えられる$articles_row['expiration_date']です。だから、周りのオーバー作品です、あなたは

$current_date->lt(\Carbon\Carbon::parse($articles_row['expiration_date'])) 

などの更新のOPはOPはその内の問題に直面している未来のユーザーのために

(\Carbon\Carbon::parse($current_date)->lt($articles_row['expiration_date']‌​)) 

に答えるようparse方法を使用して$articles_row['expiration_date']ためCarbonクラスのオブジェクトを作成する必要があります自身の変数$current_dateが問題だが、論理的には正しいdateCarbonオブジェクトではありません。

+2

ありがとうございますが、私のarticles_row変数は正しいですが、$ current_date変数Carbonは私を文字列のように表示します。これは私にとってはうまくいきます:@if(\ Carbon \ Carbon :: parse($ current_date) - > lt($ articles_row [ 'expiration_date']))))))) –

+0

downvoter atleast downvotingの理由を掲載 –

+0

はい更新も私の答えを@FunnyFrontend –

関連する問題