2017-12-21 52 views
0

デフォルトの日付書式を入力の日付をモデルに設定する方法がありますか?モデルの日付の入力デフォルト日付書式を設定する

JSON形式で受け取ったデータでモデルを作成する必要があります。日付はY-m-dTH:i:sPとなっていますが、DBの日付はデフォルトのY-m-d H:i:sの形式で保存されます。私は、モデルの$datesプロパティ内のすべての日付フィールドを追加しましたが、今私はこのように、コンストラクタですべてのparamsを設定するモデルを作成する場合:

$model = new Model($params); 

私はカーボン変換エラー(InvalidArgumentException)を取得することのでY-m-d H:i:s形式のCarbonオブジェクトを作成しようとします。

私はDate mutatorsを知っているが、それはその形式でレコードを保存しようとするため、私は

protected $dateFormat = "Y-m-d\TH:i:sP"; 

を設定した場合、それは正しくカーボンオブジェクトを作成しますが、DBに格納している間、私はエラーを取得します。

各日付パラメータの日付形式を変換せずに必要なものを達成するための標準的な方法はありますか?

+1

「toDateTimeString()」を呼び出すだけで、オブジェクトではなく文字列になります。 –

答えて

0
//date format = Y-m-dTH:i:sP 
$date = '2011-09-16T11:38:23-05:00'; 
$new_date = date_format(date_create($date), 'Y-m-d H:i:s'); 
+1

コードを少し説明してください。 – MBH

+0

これはデフォルトではない、私は日付であるすべてのフィールドのコードを繰り返さなければならない – gbalduzzi

関連する問題