ホームページ >バックエンド開発 >PHPチュートリアル >strtotime() が dd/mm/YYYY 日付で失敗する理由と修正方法

strtotime() が dd/mm/YYYY 日付で失敗する理由と修正方法

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-11 16:52:11116ブラウズ

Why Does strtotime() Fail with dd/mm/YYYY Dates, and How Can I Fix It?

strtotime() が dd/mm/YYYY 形式の処理に失敗する

strtotime() 関数は、日付の処理に特に役立ちます。ただし、サポートされる日付形式、特に dd/mm/YYYY に関する包括的なドキュメントがありません。 strtotime() でこの形式を使用しようとすると失敗し、mm/dd/YYYY 形式のみが認識されます。

dd/mm/YYYY を YYYY-mm-dd に変換します

この問題を解決するには Explode() を使用できますが、より簡単なアプローチも存在します。 dd/mm/YYYY 日付を YYYY-mm-dd 形式に変換するには:

  1. すべてのスラッシュ (/) をダッシュ​​ (-) に置き換えます: $date = str_replace('/', '-' 、$date);
  2. strtotime() を使用して変更された日付文字列を解析し、date(): echo を使用してフォーマットします。 date('Y-m-d', strtotime($date));

例:

$date = '25/05/2010';
$date = str_replace('/', '-', $date);
echo date('Y-m-d', strtotime($date));

出力:

2010-05-25

注:

strtotime() のドキュメントでは次のように明確にされています。「m/d/y または d-m-y 形式の日付は、さまざまなコンポーネント間の区切り文字を確認することで曖昧さがなくなります。区切り文字がスラッシュ (/) の場合は、アメリカ式の m/d/y とみなされます。 ; 一方、区切り文字がダッシュ (-) またはドット (.) の場合は、ヨーロッパの d-m-y 形式が想定されます。"

以上がstrtotime() が dd/mm/YYYY 日付で失敗する理由と修正方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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