2017-03-09 60 views
1

我想成立一​​個項目到小時和分鐘這樣的值:正確無法設置碳變量Laravel

foreach ($items as $item){ 
    if($item->created_at->gte($begin_date) && $item->created_at->lte($end_date)) 
    { 
     $item->created_at = $item->created_at->format('H:m'); 
     $sorted_items[] = $item; 
    } 
} 

當我使用dd($item->created_at->format('H:m'))它顯示小時和分鐘,但是當我嘗試設置$用品 - > created_at到小時和分鐘它拋出我這個錯誤:

InvalidArgumentException in Carbon.php line 582: 
Unexpected data found. 
Data missing 
+0

是否在foreach循環? – rahulsm

+0

@rahul_m已修正 – prgrm

+0

@AlexeyMezenin除了函數的名稱和返回之外,沒有別的東西了。參數是碳日期和雄辯項目。 – prgrm

回答

3

我覺得它不能使用created_at,這在model.php定義。如果您使用其他屬性,如created_at_formatted,它應該工作。

$item->created_at_formatted = Carbon::createFromFormat('Y-m-d H:i:s', $item->created_at)->format('H:m'); 

Laravel使用模型中的分配碳實例protected $dates;,所以每次你打電話$item->created_at它將返回Carbon::parse($item->created_at)。由於您將數據更改爲不正確的值(H:m),因此無法完成此操作。

希望這個作品!