Rumah >pembangunan bahagian belakang >tutorial php >Mengapa strtotime() Gagal dengan Tarikh dd/mm/YYYY, dan Bagaimana Saya Boleh Membetulkannya?

Mengapa strtotime() Gagal dengan Tarikh dd/mm/YYYY, dan Bagaimana Saya Boleh Membetulkannya?

Patricia Arquette
Patricia Arquetteasal
2024-12-11 16:52:11116semak imbas

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

strtotime() Gagal Mengendalikan Format dd/mm/YYYY

Fungsi strtotime() terbukti amat berguna untuk pengendalian tarikh. Walau bagaimanapun, ia tidak mempunyai dokumentasi komprehensif mengenai format tarikh yang disokong, terutamanya apabila ia berkaitan dengan dd/mm/YYYY. Percubaan untuk menggunakan format ini dalam strtotime() gagal, dengan hanya format mm/dd/YYYY dikenali.

Menukar dd/mm/YYYY kepada YYYY-mm-dd

Explode() boleh digunakan untuk menyelesaikan isu ini, tetapi pendekatan yang lebih mudah wujud. Untuk menukar tarikh dd/mm/YYYY kepada format YYYY-mm-dd:

  1. Ganti semua garis miring (/) dengan sempang (-): $date = str_replace('/', '-' , $date);
  2. Gunakan strtotime() untuk menghuraikan rentetan tarikh yang diubah suai dan formatkannya menggunakan date(): echo tarikh('Y-m-d', strtotime($date));

Contoh:

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

Output:

2010-05-25

Nota:

The Dokumentasi strtotime() menjelaskan: "Tarikh dalam format m/d/y atau d-m-y dinyahkekaburan dengan melihat pemisah antara pelbagai komponen: jika pemisah ialah garis miring (/), maka m/d/y Amerika diandaikan ; manakala jika pemisah ialah tanda sempang (-) atau titik (.), maka format d-m-y Eropah diandaikan."

Atas ialah kandungan terperinci Mengapa strtotime() Gagal dengan Tarikh dd/mm/YYYY, dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn