strtotime() dd/mm/YYYY 形式で苦労する
strtotime() 関数を使用するときは、その関数に注意することが重要です日付形式の制限。さまざまな形式をサポートしていますが、dd/mm/YYYY 形式を扱うときはうまくいきません。
解決策: dd/mm/YYYY を YYYY-mm-dd に変換します
この問題を解決し、dd/mm/YYYY 形式の日付を YYYY-mm-dd に変換するには、次のことを検討してください。次の簡略化されたメソッド:
$date = '25/05/2010'; $date = str_replace('/', '-', $date); echo date('Y-m-d', strtotime($date));
出力:
2010-05-25
strtotime() Documentation
によると、strtotime( )ドキュメント、日付は月/日/年、またはd-m-y 形式は、使用される区切り文字に基づいて解釈されます。区切り文字がスラッシュ (/) の場合、米国の m/d/y 形式が想定されます。区切り文字がダッシュ (-) またはドット (.) の場合、ヨーロッパの d-m-y 形式が想定されます。
この場合、dd/mm/YYYY は区切り文字としてダッシュを使用するため、準拠しません。サポートされている形式のいずれかに変換します。したがって、strtotime() を使用する前に、日付を受け入れられる d-m-y 形式に変換するために、str_replace() を使用した変換手順が必要です。
以上が`strtotime()` が dd/mm/YYYY で失敗するのはなぜですか?どうすれば修正できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。