Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Kaedah ungkapan biasa PHP untuk mengesahkan julat tahun tertentu

Kaedah ungkapan biasa PHP untuk mengesahkan julat tahun tertentu

WBOY
WBOYasal
2023-06-24 10:50:381264semak imbas

Dalam proses membangunkan aplikasi web, kadangkala perlu untuk mengesahkan data yang dimasukkan oleh pengguna. Satu jenis data biasa ialah tahun. Dalam kes sedemikian, menggunakan ungkapan biasa PHP boleh menjadi cara yang cekap dan mudah untuk mengesahkan sama ada tahun yang dimasukkan oleh pengguna berada dalam julat tahun tertentu.

PHP ialah bahasa pengaturcaraan yang menyokong ungkapan biasa. Ia menyediakan banyak fungsi terbina dalam untuk mengendalikan ungkapan biasa. Dalam siaran ini, kami akan membincangkan cara menggunakan ungkapan biasa PHP untuk mengesahkan tahun dalam julat tahun tertentu.

  1. Tentukan julat tahun

Mula-mula, anda perlu menentukan julat tahun yang program PHP anda perlu sahkan. Sebagai contoh, jika anda perlu mengesahkan bahawa tahun yang dimasukkan oleh pengguna adalah antara 1900 dan 2099, anda perlu menggunakan kod berikut:

$yearRegex = '/^(19|20)d{2}$/';

regex ini akan sepadan jika ia bermula dengan nombor "19" atau "20" daripada empat digit. Jika julat tahun yang anda perlukan untuk mengesahkan adalah berbeza, anda boleh mengubah suai regex ini dengan sewajarnya. Contohnya, jika anda perlu mengesahkan tahun antara 2000 dan 2050, anda boleh menggunakan kod berikut:

$yearRegex = '/^20(0d|50)$/';

Reexs ini akan memadankan nombor bermula dengan nombor "20" diikuti dengan nombor "00" hingga " 49 ” atau nombor empat digit “50”.

  1. Konfigurasikan fungsi pengesahan

Sekarang, anda perlu menulis fungsi PHP untuk melaksanakan pengesahan ungkapan biasa. Fungsi ini akan menerima satu tahun sebagai input dan mengembalikan nilai boolean (benar/salah) yang menunjukkan sama ada tahun itu berada dalam selang waktu tertentu.

function validateYear($year) {
    $yearRegex = '/^(19|20)d{2}$/';
    if (preg_match($yearRegex, $year)) {
        if ($year >= 1900 && $year <= 2099) { // 可替换为您需要验证的年份范围
            return true;
        }
    }
    return false;
}

Fungsi ini menggunakan fungsi preg_match PHP untuk melaksanakan padanan ungkapan biasa. Ia mula-mula cuba memadankan nombor empat digit yang bermula dengan digit "19" atau "20", diikuti dengan dua digit. Jika perlawanan itu berjaya, semak sama ada tahun itu berada dalam julat tertentu. Mengembalikan benar jika tahun berada dalam julat;

  1. Menggunakan fungsi pengesahan

Kini anda boleh menggunakan fungsi ini untuk mengesahkan bahawa tahun yang dimasukkan oleh pengguna berada dalam julat tahun tertentu. Sebagai contoh, andaikan anda mempunyai borang yang mengandungi tahun yang dimasukkan oleh pengguna, anda boleh menggunakan kod berikut:

if (isset($_POST['year'])) {
    $year = $_POST['year'];
    if (validateYear($year)) {
        echo "输入的年份在 1900 年到 2099 年之间";
    } else {
        echo "请输入在 1900 年到 2099 年之间的年份";
    }
}

Dalam contoh ini, jika tahun yang dimasukkan oleh pengguna adalah antara 1900 dan 2099, ia akan keluaran "Dimasukkan Tahun adalah antara 1900 dan 2099" jika tidak, "Sila masukkan tahun antara 1900 dan 2099" akan menjadi keluaran.

Ringkasan

Menggunakan ungkapan biasa PHP untuk mengesahkan tahun bagi julat tahun tertentu ialah kaedah berkesan yang boleh digunakan untuk mengesahkan data input pengguna. Apabila menulis fungsi pengesahan, anda perlu mengubah suai ungkapan biasa seperti yang diperlukan untuk memadankan julat tahun yang anda perlukan untuk mengesahkan. Untuk keperluan pengesahan data yang kompleks, menggunakan ungkapan biasa adalah lebih cekap dan fleksibel daripada fungsi PHP tradisional.

Atas ialah kandungan terperinci Kaedah ungkapan biasa PHP untuk mengesahkan julat tahun tertentu. 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