ホームページ >バックエンド開発 >PHPチュートリアル >explode()を使わずにdd/mm/YYYY日付をYYYY-mm-ddに変換する方法?
strtotime() dd/mm/YYYY 形式と互換性がありません
汎用性の高い strtotime() 関数は、日付を Unix に変換する効率的な手段を提供しますタイムスタンプ。ただし、そのドキュメントには、サポートされている日付形式に関する包括的な詳細が不足しています。この関数は mm/dd/YYYY 形式を受け入れますが、対応する dd/mm/YYYY を認識できません。
この制限を克服するために、dd/mm/YYYY 形式の日付を次の形式に変換する代替ソリューションを模索します。 YYYY-mm-dd、explode() 関数に頼ることはありません。
簡略化解決策:
$date = '25/05/2010'; $date = str_replace('/', '-', $date); echo date('Y-m-d', strtotime($date));
出力:
2010-05-25
説明:
このアプローチは str_replace を利用します。 () 元の日付文字列のスラッシュ (/) をハイフンに置き換える関数(-) を使用すると、strtotime() 関数との互換性が得られます。その後 date('Y-m-d', ...) を使用すると、変換された日付が目的の YYYY-mm-dd 形式にフォーマットされるようになります。
strtotime() ドキュメントの説明:
strtotime() のドキュメントには、「m/d/y」または「d-m-y」形式の日付は以下に基づいて解釈されると記載されています。使用したセパレーター。スラッシュ ("/") が表示される場合は、アメリカの "m/d/y" 形式とみなされますが、ダッシュ ("-") またはドット (".") はヨーロッパの "d-m-y" 形式を示します。
以上がexplode()を使わずにdd/mm/YYYY日付をYYYY-mm-ddに変換する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。