PHPで日付形式を変更する方法をわかりやすく解説
PHPで日付の形式を変更するには、date() 関数と strtotime() 関数、または DateTime クラスを活用します。ここでは、具体的なコード例を使って日付形式の変換方法を紹介します。
例1:strtotime()とdate()関数を使った方法
まずは、strtotime() 関数で文字列の日付をタイムスタンプに変換し、date() 関数で任意の形式に整形する基本的な方法です。さらに、「+20 days」のように指定することで、日付の加算も同時に行えます。
<?php
$date = "2019-11-11 05:25 PM";
echo "元の日付を表示...\n";
echo "Date = $date";
echo "\n20日後の日付を表示...\n";
echo date('Y-m-d H:i', strtotime($date . ' + 20 days'));
?>
出力結果
上記のコードを実行すると、次のような出力が得られます。
元の日付を表示... Date = 2019-11-11 05:25 PM 20日後の日付を表示... 2019-12-01 17:25
この例では、「2019-11-11 05:25 PM」という日付文字列に20日を加算し、「Y-m-d H:i」形式(年-月-日 時:分)に変換しています。午後5時25分は24時間表記では「17:25」となるため、出力結果は「2019-12-01 17:25」になります。
例2:DateTimeクラスとdate_format()関数を使った方法
次に、オブジェクト指向的なアプローチとして、date_create() 関数で DateTime オブジェクトを作成し、date_format() 関数で形式を変換する方法を見てみましょう。
<?php
$date = date_create("2019-11-11");
echo "日付を表示...\n";
echo date_format($date, "Y/m/d H:i:s");
?>
出力結果
上記のコードを実行すると、次のような出力が得られます。
日付を表示... 2019/11/11 00:00:00
この例では、「2019-11-11」という日付を「Y/m/d H:i:s」形式(年/月/日 時:分:秒)に変換しています。時刻が指定されていないため、デフォルト値の「00:00:00」が出力されます。
まとめ
PHPで日付形式を変更する主な方法は以下の2つです。
- date() + strtotime(): 文字列の日付を直接操作でき、日付の加算・減算も簡単に行えます。
- DateTimeクラス + date_format(): オブジェクト指向的な書き方で、より柔軟な日付操作が可能です。
用途に応じて使い分けることで、効率的に日付処理を行うことができます。
-
MongoDBで日付形式を変更する方法
```html MongoDBシェルでは、文字列として扱われている日付の形式を自由に変換できます。本記事では、split()メソッドとカスタム変数を使って、日付フォーマットを変換する手順を具体例とともに解説します。 変換前の日付データ 今回は、次のような「日-月-年(DD-MM-YYYY)」形式の日付を例にします。 01-10-2019 日付形式を変換する手順 この日付を「年-月-日(YYYY-MM-DD)」形式に変更します。まず、日付文字列をカスタム変数に格納し、split()メソッドで分割してから、文字列として組み立て直します。 区切り文字には正規表現 /-|\// を使用しているため
-
PHP・MySQLで日付形式をdd/mm/yyyyに変更する方法
PHPやMySQLでは、日付の表示形式を自由に変更できます。本記事では、日付を「dd/mm/yyyy(日/月/年)」形式に変換する方法を、PHPとMySQLそれぞれのケースについて解説します。PHPで日付形式を変更する方法PHPでは、date()関数を使って日付形式を簡単に変更できます。基本構文は以下の通りです。date(d/m/Y, 日時の変数);また、文字列を日付として扱う場合は、strtotime()関数を使用します。この関数は、日付を表す文字列をUnixタイムスタンプに変換してくれるため、date()関数と組み合わせて使うのが一般的です。以下は、日時を「dd/mm/yyyy」形式に整形