Ungkapan biasa dalam bahasa PHP ialah alat berkuasa yang boleh digunakan untuk memadankan, mencari dan menggantikan teks dalam rentetan. Dalam pembangunan web, ungkapan biasa digunakan secara meluas untuk mengesahkan data borang yang dimasukkan oleh pengguna. Artikel ini akan memperkenalkan cara menggunakan ungkapan biasa PHP untuk mengesahkan nombor minggu tertentu.
Pertama sekali, kita perlu memahami bagaimana nombor minggu dinyatakan. Dalam kes 52 minggu dalam setahun, terdapat dua cara untuk menyatakan nombor minggu: ISO 8601 dan cara Amerika Utara. ISO 8601 ialah spesifikasi standard yang dikeluarkan oleh International Organization for Standardization (ISO) Formatnya ialah YYYY-Www, dengan YYYY mewakili tahun, W mewakili minggu dan ww mewakili nombor minggu dan julat nilai ialah 01 hingga 52. . Sebagai contoh, minggu pertama 2019 diwakili sebagai 2019-W01. Kaedah Amerika Utara membahagikan tahun kepada empat suku, setiap suku tahun mempunyai 13 minggu, dengan minggu pertama diwakili sebagai 1 dan minggu terakhir diwakili sebagai 13. Oleh itu, minggu pertama 2019 diwakili sebagai 2019-01 dan minggu terakhir diwakili sebagai 2019-52.
Seterusnya, kami akan memperkenalkan kaedah menggunakan ungkapan biasa untuk mengesahkan kaedah ISO 8601 dan Amerika Utara masing-masing. Yang pertama ialah ISO 8601.
Nombor minggu dalam format ISO 8601 boleh disahkan dengan ungkapan biasa berikut:
$regex = '/^20d{2}-W([1-9]|[1-4][0-9]|5[0-2])$/';
Ungkapan biasa ini boleh mengesahkan tahun empat digit yang diawali dengan 20, diikuti dengan - W dan nombor minggu dari 1 hingga 52. Antaranya, [1-9] mewakili satu digit, 1-4 mewakili nombor dari 1 hingga 4 dalam sepuluh digit, nombor dari 0 hingga 9 dalam digit satu, 5[0-2] mewakili nombor dalam lima puluh digit, dan nombor dalam digit satu Nombor dari 0 hingga 2.
Berikut ialah contoh kod, menggunakan fungsi preg_match() untuk pengesahan:
$week = '2019-W10'; if (preg_match('/^20d{2}-W([1-9]|[1-4][0-9]|5[0-2])$/', $week)) { echo $week . ' is a valid week number.'; } else { echo $week . ' is not a valid week number.'; } //输出结果:2019-W10 is a valid week number.
Dalam contoh ini, kami menggunakan fungsi preg_match(), menghantar ungkapan biasa dalam parameter pertama, dan parameter kedua ialah menjadi rentetan yang disahkan. Jika hasil pulangan adalah benar, ini bermakna rentetan itu mematuhi peraturan ungkapan biasa. Jika hasil pulangan palsu, ini bermakna rentetan itu tidak mematuhi peraturan.
Nombor minggu dalam gaya Amerika Utara boleh disahkan dengan ungkapan biasa berikut:
$regex = '/^20d{2}-(0[1-9]|1[0-3])$/';
Ungkapan biasa ini boleh mengesahkan tahun empat digit yang diawali dengan 20 diikuti dengan bar mendatar dan nombor dari 01 hingga 13. Antaranya, 0[1-9] bermaksud digit sepuluh ialah 0 dan digit satu ialah nombor daripada 1 hingga 9; bermakna digit sepuluh ialah 1 dan digit satu ialah nombor daripada 0; kepada 3.
Berikut ialah contoh kod, juga menggunakan fungsi preg_match() untuk pengesahan:
$week = '2019-10'; if (preg_match('/^20d{2}-(0[1-9]|1[0-3])$/', $week)) { echo $week . ' is a valid week number.'; } else { echo $week . ' is not a valid week number.'; } //输出结果:2019-10 is a valid week number.
Sama seperti kaedah pengesahan format ISO 8601, kita juga boleh menggunakan fungsi preg_match() untuk pengesahan. Dua contoh di atas adalah untuk mengesahkan bilangan minggu tertentu Jika anda perlu mengesahkan bilangan minggu dalam tempoh masa, anda perlu mengubah suai peraturan ungkapan biasa. Untuk mengesahkan semua nombor minggu pada 2019, ungkapan dalam format ISO 8601 hendaklah /^2019-W([1-9]|1-4|5[0-2])$/, ungkapan Amerika Utara Hendaklah /^ 2019-(0[1-9]|1[0-3])$/.
Ringkasnya, kaedah menggunakan ungkapan biasa PHP untuk mengesahkan nombor minggu tertentu boleh dibahagikan kepada kaedah ISO 8601 dan Amerika Utara. Melalui pengesahan ungkapan biasa, ketepatan data borang boleh dipastikan, dengan itu meningkatkan kestabilan dan pengalaman pengguna aplikasi web.
Atas ialah kandungan terperinci Kaedah ungkapan biasa PHP untuk mengesahkan nombor minggu tertentu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!