データベースのテーブルで日時形式を使用しています。
次のようにフォーマットされます: yyyy/mm/dd 00:00:00
1) 値から日付だけ、時間だけを抽出するにはどうすればよいですか? 2) 出力時に日付を mm/dd/yyyy のように再フォーマットするにはどうすればよいですか? 3) 出力時に時刻を hh:mm am/pm に再フォーマットするにはどうすればよいですか?
ありがとう
これを試して:
date('Y-m-d', strtotime( $thetime ) );
date('H:i:s', strtotime( $thetime ) );
date('g:i a', strtotime( $thetime ) );
日付関数について読んでください。
これは、MySQL のDATE_FORMAT関数を使用してサーバー側で実現できます。
1) 値から日付だけ、時間だけを抽出するにはどうすればよいですか?
SELECT DATE(dateColumn)
2) 出力時に日付を mm/dd/yyyy のように再フォーマットするにはどうすればよいですか?
SELECT DATE_FORMAT(dateColumn, '%m/%d/%Y')
3) 出力時に時刻を hh:mm am/pm に再フォーマットするにはどうすればよいですか?
SELECT DATE_FORMAT(dateColumn, '%h:%i %p')
日時オブジェクトを使用できます...
$dateTime = new DateTime($dateTimeFromDB);
$date = $dateTime->format('Y/m/d');;
$time = $dateTime->format('H:i:s');
$formattedDate = $dateTime->format('m/d/Y');
$formattedTime = $dateTime->format('g:i a');
それらのそれぞれをエコーし、あなたが求めているものを提供する必要があります...
クエリから形式を抽出します。
SELECT DATE(`datetime_column`) as `date` FROM `table`
日付部分のみを取得します。
PHP での日付/時刻のフォーマットについては、DateTime オブジェクトを参照してください。
1) MySQL は通常、日時を yyyy-mm-dd hh:mm:ss としてフォーマットします。この場合、次のコードを使用してフォーマットします$sql
。
$year = $sql[0] . $sql[1] . $sql[2] . $sql[3];
$month = $sql[5] . $sql[6];
$day = $sql[8] . $sql[9];
$hour = $sql[11] . $sql[12];
$min = $sql[14] . $sql[15];
$sec = $sql[17] . $sql[18];
2) http://php.net/manual/de/function.date.phpをフォーマットする
3) http://php.net/manual/de/function.date.phpをフォーマットする ;-)