ホームページ >データベース >mysql チュートリアル >PHP の `strtotime()` で 1970 年より前の日付を処理するにはどうすればよいですか?

PHP の `strtotime()` で 1970 年より前の日付を処理するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-17 10:33:03864ブラウズ

How Can I Handle Dates Before 1970 with PHP's `strtotime()`?

過去の日付の strtotime() の範囲を拡張する

問題:

あなたstrtotime() を使用して、 yyyy-mm-dd 形式ですが、strtotime() が 1970 年 1 月 1 日より前の日付を処理できないという制限に遭遇しました。

解決策:

日付を処理するには1970 年より前は、次のアプローチを検討してください:

  • チェックPHP のバージョンとプラットフォーム:

以前のバージョンとオペレーティング システムには範囲が限られていたため、PHP のバージョンとプラットフォームを更新します。

  • DateTime オブジェクトを使用する:

1901 年 12 月 13 日から2038 年 1 月 19 日の範囲では、より広い日付範囲のサポートを提供する PHP の DateTime オブジェクトを使用します。

コードサンプル:

手続き型:

$date = date_create($row['value']);
if ($date) {
    echo date_format($date, "F j, Y");
} else {
    // Handle errors
}

OOP:

try {
    $date = new DateTime($row['value']);
    echo $date->format("F j, Y");
} catch (Exception $e) {
    // Handle errors
}

これらの手法を採用することで、データベース構造を変更せずに、1970 年より前の日付を効果的に処理できます。

以上がPHP の `strtotime()` で 1970 年より前の日付を処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。