## Bagaimana untuk Mengesan URL dengan Cekap dalam Rentetan Menggunakan PHP?

Barbara Streisand
Lepaskan: 2024-10-24 18:51:02
asal
593 orang telah melayarinya

## How to Efficiently Detect URLs within a String Using PHP?

Menentukan Kehadiran Rentetan dalam Tatasusunan

Anda berhasrat untuk mengesahkan sama ada rentetan yang diserahkan pengguna mengandungi sebarang URL yang disimpan dalam tatasusunan yang telah ditetapkan. Untuk berbuat demikian, anda telah cuba menggunakan fungsi in_array(), tetapi ia secara konsisten mengembalikan "Padanan tidak ditemui" tanpa mengira input.

Pendekatan Dibetulkan

Isunya terletak pada penggunaan in_array() untuk tugas ini. Fungsi ini menilai kehadiran keseluruhan rentetan dalam tatasusunan, dan bukannya memadankan nilai separa. Untuk menyemak kemasukan rentetan, pertimbangkan alternatif berikut:

  1. strpos():

    <code class="php">if (strpos($string, $url) !== FALSE) {
        echo "Match found"; 
        return true;
    }</code>
    Salin selepas log masuk

    Fungsi ini mencari kejadian $ url dalam $string. Keputusan strpos bukan PALSU menunjukkan padanan, dan pernyataan gema dan pengembalian sewajarnya menandakan dan mengembalikan "Padanan ditemui".

  2. strstr():

    <code class="php">if (strstr($string, $url)) {
        echo "Match found"; 
        return true;
    }</code>
    Salin selepas log masuk

    strstr() berkesan mencapai operasi yang sama seperti strpos(). Ia mengembalikan bahagian $string yang mengandungi $url, dan hasil bukan FALSE sekali lagi membayangkan perlawanan yang berjaya.

Lelaran melalui Tatasusunan

Memandangkan anda ingin menyemak berbilang URL dalam tatasusunan, gunakan gelung foreach untuk melelaran melalui setiap elemen:

<code class="php">foreach ($owned_urls as $url) {
    if (strpos($string, $url) !== FALSE) { // or strstr($string, $url)
        echo "Match found"; 
        return true;
    }
}</code>
Salin selepas log masuk

Gelung ini meneroka setiap URL dan jika ada yang sepadan dengan rentetan, ia menamatkan gelung , memaparkan "Padanan ditemui", dan mengembalikan benar. Sebagai alternatif, apabila membuat kesimpulan tanpa mencari padanan, skrip itu bergema "Tidak dijumpai!" dan mengembalikan palsu.

Sensitiviti Kes

Jika rentetan dan URL tidak sensitif huruf besar-besaran, gunakan fungsi stripos() atau stristr() masing-masing. Versi tidak sensitif huruf besar ini memastikan padanan adalah bebas huruf besar.

Atas ialah kandungan terperinci ## Bagaimana untuk Mengesan URL dengan Cekap dalam Rentetan Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!