Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Gunakan fungsi str_contains() dalam PHP8 untuk mengendalikan padanan rentetan dengan cepat

Gunakan fungsi str_contains() dalam PHP8 untuk mengendalikan padanan rentetan dengan cepat

王林
王林asal
2023-05-16 08:50:08936semak imbas

Dengan perkembangan pesat Internet, penggunaan rentetan menjadi semakin biasa dalam kehidupan seharian, dan pemadanan rentetan merupakan salah satu masalah paling biasa dalam memproses rentetan Oleh itu, kecekapan dan ketepatan pemadanan rentetan juga dibangunkan Salah satu isu penting yang menjadi perhatian penyelidik. Dalam PHP8, fungsi pemprosesan rentetan yang sangat praktikal telah ditambah: str_contains(), yang boleh mencari subrentetan dalam rentetan dengan cepat dan meningkatkan kecekapan padanan rentetan Artikel ini akan memperkenalkan dan membincangkan cara menggunakan fungsi ini dalam pembangunan sebenar masalah padanan rentetan.

1. Pengenalan kepada fungsi str_contains()

Fungsi str_contains() ialah fungsi pemprosesan rentetan yang baru ditambah dalam PHP8, yang digunakan untuk mencari sama ada rentetan mengandungi subrentetan tertentu. Format sintaks fungsi ini adalah seperti berikut:

bool str_contains(string $haystack, string $needle)

Antaranya, $haystack mewakili rentetan yang perlu dicari, dan $needle mewakili subrentetan yang perlu dicari. Jika $haystack mengandungi subrentetan $needle, fungsi mengembalikan benar, jika tidak ia mengembalikan palsu.

2. Gunakan fungsi str_contains() untuk mencapai padanan rentetan pantas

Dalam pembangunan sebenar, pemadanan rentetan ialah operasi yang kerap digunakan. Apabila menggunakan kaedah tradisional untuk pemadanan rentetan, anda perlu merentasi keseluruhan rentetan dan membandingkan setiap subrentetan satu demi satu untuk melihat sama ada kaedah ini tidak cekap dan memakan masa. Menggunakan fungsi str_contains() boleh meningkatkan kecekapan pemadanan, contohnya:

// 传统的字符串匹配方法
str = "Hello, World!";
if (strpos(str, "World!") !== false) {
    echo "字符串匹配成功!";
}

// 使用str_contains()函数进行字符串匹配
str = "Hello, World!";
if (str_contains(str, "World!")) {
    echo "字符串匹配成功!";
}

Dapat dilihat bahawa menggunakan fungsi str_contains() boleh memudahkan kod dan melaksanakan operasi pemadanan rentetan dengan lebih mudah.

3. Aplikasi Praktikal

Dalam pembangunan sebenar, pemadanan rentetan digunakan secara meluas Perkara berikut akan memperkenalkan cara menggunakan fungsi str_contains() untuk menangani masalah padanan rentetan dalam beberapa senario biasa.

  1. Semak sama ada pautan URL mengandungi kata kunci

Apabila membangunkan tapak web, biasanya perlu menyemak sama ada pautan URL mengandungi kata kunci tertentu supaya ia boleh diproses dengan sewajarnya . Gunakan fungsi str_contains() untuk menentukan dengan cepat sama ada pautan URL mengandungi kata kunci yang ditentukan, contohnya:

$url = "https://www.example.com/search?q=apple";
if (str_contains($url, "search")) {
    // URL链接中包含搜索关键字
    // 进行搜索操作
} elseif (str_contains($url, "product")) {
    // URL链接中包含产品关键字
    // 进行产品展示操作
}
  1. Semak sama ada alamat e-mel yang dimasukkan memenuhi spesifikasi

Daftar sebagai pengguna pembangunan, log masuk dan fungsi lain, adalah perlu untuk mengesahkan sama ada alamat e-mel yang dimasukkan oleh pengguna memenuhi spesifikasi. Gunakan fungsi str_contains() untuk menentukan dengan cepat sama ada alamat e-mel mengandungi aksara utama, contohnya:

$email = "john@example.com";
if (str_contains($email, "@") && str_contains($email, ".")) {
    // 邮箱地址符合规范
    // 进行注册或登录操作
} else {
    // 邮箱地址不符合规范
    // 提示用户重新输入
}
  1. Semak sama ada kata laluan yang dimasukkan mengandungi aksara tertentu

Dalam pengguna pembangunan pendaftaran, Apabila log masuk dan fungsi lain, adalah perlu untuk mengesahkan sama ada kata laluan yang dimasukkan oleh pengguna mengandungi aksara khusus untuk meningkatkan keselamatan akaun. Gunakan fungsi str_contains() untuk menentukan dengan cepat sama ada kata laluan mengandungi aksara tertentu, contohnya:

$password = "1qaz2wsx!@";
if (str_contains($password, "!") || str_contains($password, "#") || str_contains($password, "$")) {
    // 密码符合规范
    // 进行注册或登录操作
} else {
    // 密码不符合规范
    // 提示用户重新输入
}

4. Nota

Apabila menggunakan fungsi str_contains(), anda perlu memberi perhatian kepada berikut:

  1. Fungsi ini hanya terpakai untuk versi PHP8 dan ke atas Apabila menggunakannya, anda perlu mengesahkan sama ada versi PHP menyokong fungsi ini.
  2. Nilai pulangan fungsi ini adalah daripada jenis Boolean dan perlu diproses sewajarnya berdasarkan nilai pulangan.
  3. Fungsi ini hanya sesuai untuk pemadanan rentetan ringkas Untuk pemprosesan rentetan yang kompleks, fungsi pemprosesan rentetan lain perlu digunakan.

5. Ringkasan

Artikel ini memperkenalkan fungsi str_contains() yang baru ditambah dalam PHP8, dan membincangkan secara terperinci cara menggunakan fungsi ini untuk menangani masalah padanan rentetan dalam pembangunan sebenar. Menggunakan fungsi str_contains() boleh menangani masalah padanan rentetan dengan cepat dan mudah, meningkatkan kecekapan pembangunan dan mengurangkan kos pembangunan. Apabila menggunakan fungsi ini, anda perlu memberi perhatian kepada jenis nilai pulangan fungsi, keserasian versi PHP dan isu-isu lain, supaya dapat menggunakan fungsi ini dengan lebih baik untuk pemprosesan rentetan.

Atas ialah kandungan terperinci Gunakan fungsi str_contains() dalam PHP8 untuk mengendalikan padanan rentetan dengan cepat. 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