PHPで文字列から日付を作成する方法


  1. strtotime関数を使用する方法:

    $dateString = "2024-02-07";
    $date = date("Y-m-d", strtotime($dateString));
    echo $date;

    このコードでは、strtotime関数を使用して文字列をUnixタイムスタンプに変換し、date関数を使用して指定した形式で日付を表示しています。

  2. DateTimeクラスを使用する方法:

    $dateString = "2024-02-07";
    $date = DateTime::createFromFormat("Y-m-d", $dateString);
    echo $date->format("Y-m-d");

    このコードでは、DateTime::createFromFormatメソッドを使用して指定した形式の文字列からDateTimeオブジェクトを作成し、formatメソッドを使用して指定した形式で日付を表示しています。

  3. DateTimeImmutableクラスを使用する方法(PHP 5.5以降):

    $dateString = "2024-02-07";
    $date = DateTimeImmutable::createFromFormat("Y-m-d", $dateString);
    echo $date->format("Y-m-d");

    DateTimeImmutableクラスは、変更不可のDateTimeオブジェクトを作成するため、元のオブジェクトが変更される心配がありません。

これらの方法を使用して、文字列から日付を作成することができます。必要に応じて、さまざまな日付形式やタイムゾーンを指定することも可能です。