2016-07-23 8 views
1

タイムピッカーを使用して時間文字列を取得します(例: '1:00 am'または '12:00 pm')。私はこれを変更してmysave TIMEのデータ型のカラムに格納する必要があります。例えば'12:00:00 'です。今、TIME列は24時間形式で保存されているので、私はそれを "変更"する必要があります。私はCarbonを使用して修正する助けを見つけることができないようです。なぜなら、私は日付を使用していないからです。 Laravelでミューテータを使用していますが、より良い方法があるかどうかを知りたい場合は、カーボンを日付として使用してください。LaravelのTIME列に時間文字列を保存する

public function setTimeAttribute($time) { 
    if(substr($time, -2, 0) == 'am') { 
     // do nothing 
    } else if(substr($time, -2, 0) == 'pm') { 
     // increase hours.ie: 1:00pm to 13:00:00 
    } 
} 

助けてください。ありがとう。

答えて

1

PHP strtotime()を使用してください。

$time = "12:00am"; 

$timestamp = strtotime($time); 

echo $timestamp; 

//Will print something like: 1469228400 

または他の任意の日付形式。

時刻をタイムスタンプとして保存することをお勧めします。日付()関数を使用して変換することができます。 例:$value = date("H:i:s", $timestamp);

関連する問題