4 kaedah: 1. Gunakan stripos() untuk mencari kedudukan kejadian subrentetan, sintaksnya ialah "stripos($str,$find)"; 2. Gunakan strripos() untuk mencari kedudukan kejadian subrentetan, sintaks "strripos($str,$find)"; ) untuk mencari kedudukan kejadian subrentetan, sintaks "strrpos($str,$find)".
Persekitaran pengendalian tutorial ini: sistem Windows 7, PHP versi 8.1, komputer DELL G3
Apabila melakukan operasi carian rentetan, kadangkala Ia diperlukan untuk mencari subrentetan tertentu (substring untuk pendek) dalam rentetan tertentu untuk melihat sama ada subrentetan wujud dalam rentetan ini.
Kami biasanya menggunakan fungsi terbina dalam PHP untuk mencari kejadian pertama atau terakhir subrentetan ini dalam rentetan untuk membuat pertimbangan. Terdapat dua situasi untuk mencari rentetan: satu adalah tidak sensitif huruf besar-besaran, iaitu, carian tidak sensitif huruf besar-kecil, iaitu, carian sensitif huruf besar-kecil;
Kes 1: Tentukan sama ada subrentetan wujud (tidak sensitif huruf besar-besaran)
Pengesanan tidak sensitif huruf besar sama ada subrentetan itu wujud, anda perlu menggunakan fungsi stripos() dan srripos().
Kedua-dua fungsi stripos() dan strripos() boleh menyemak kedudukan kejadian subrentetan yang ditentukan dalam cara tidak sensitif huruf besar dan kecil Jika nilai pulangan adalah FALSE, subrentetan yang ditentukan tidak wujud.
Jadi kita boleh menggunakan kod berikut untuk menentukan sama ada subrentetan wujud
<?php header("Content-type:text/html;charset=utf-8"); $string = "ABCDCBAbcd"; $findme = "bC"; if(stripos($string, $findme)!=FALSE){ echo "子串 “'$findme'” 在字符串 “'$string'” 中存在。"; }else{ echo "子串 “'$findme'” 在字符串 “'$string'” 中不存在。"; } if(strripos($string, $findme)!=FALSE){ echo "<br>子串 “'$findme'” 在字符串 “'$string'” 中存在。"; }else{ echo "<br>子串 “'$findme'” 在字符串 “'$string'” 中不存在。"; } ?>
Hasil keluaran:
Penerangan : Fungsi stripos() dan strripos()
stripos($string,$find,$start)
boleh mencari kejadian pertama rentetan dalam rentetan lain (tidak sensitif huruf besar-besaran). Fungsi
strripos($string,$find,$start)
mencari kejadian terakhir rentetan dalam rentetan lain (tidak sensitif huruf besar-besaran).
Parameter kedua-dua fungsi ini adalah serupa Kedua-duanya menerima dua parameter yang diperlukan $string
dan $find
, dan satu parameter pilihan $start
.
$string
Parameter: digunakan untuk menentukan rentetan untuk ditemui.
$find
Parameter: digunakan untuk menentukan subrentetan untuk ditemui, yang boleh mengandungi satu atau lebih aksara. (Jika ia bukan jenis rentetan, ia ditukar kepada integer dan dianggap sebagai nilai tersusun aksara).
$start
Parameter: digunakan untuk menentukan aksara dalam $string
untuk mula mencari daripada nilai kedudukan yang dikembalikan masih relatif kepada kedudukan permulaan $string
.
Kes 2: Kesan sama ada subrentetan wujud (sensitif huruf besar-kecil)
Pengesan sensitif huruf besar-besaran Sama ada rentetan itu wujud , anda perlu menggunakan fungsi strpos() dan strrpos().
Fungsi strpos() dan strrpos() boleh menyemak kedudukan kejadian subrentetan yang ditentukan dalam cara sensitif huruf besar-besaran Jika nilai pulangan adalah FALSE, subrentetan yang ditentukan tidak wujud.
Contoh:
<?php header("Content-type:text/html;charset=utf-8"); $string = "ABCDCBAbcd"; $findme1 = "bC"; $findme2 = "bc"; $pos1 = strpos($string, $findme1); $pos2 = strrpos($string, $findme1); $pos3 = strpos($string, $findme2); $pos4 = strrpos($string, $findme2); if($pos1 !=FALSE){ echo "子串 '$findme1' 在字符串 '$string' 中存在。"; }else{ echo "子串 '$findme1' 在字符串 '$string' 中不存在。"; } if($pos2 !=FALSE){ echo "<br>子串 '$findme1' 在字符串 '$string' 中存在。"; }else{ echo "<br>子串 '$findme1' 在字符串 '$string' 中不存在。"; } if($pos3 !=FALSE){ echo "<br>子串 '$findme2' 在字符串 '$string' 中存在。"; }else{ echo "<br>子串 '$findme2' 在字符串 '$string' 中不存在。"; } if($pos4 !=FALSE){ echo "<br>子串 '$findme2' 在字符串 '$string' 中存在。"; }else{ echo "<br>子串 '$findme2' 在字符串 '$string' 中不存在。"; } ?>
Fungsi strpos() dan strrpos() akan mencari subrentetan $string
atau $findme1
dalam rentetan $findme2
dalam cara sensitif huruf besar-besaran. Apabila terdapat padanan tepat dan subrentetan wujud, kejadian pertama atau terakhir subrentetan dalam rentetan akan dikembalikan jika subrentetan tidak ditemui dalam rentetan, FALSE
akan dikembalikan.
Seperti yang dapat dilihat daripada contoh di atas, hanya subrentetan "bc
" dan rentetan "ABCDCBAbcd
" adalah padanan tepat dan subrentetan "bc
" dianggap wujud dalam rentetan "ABCDCBAbcd
" dalam. Oleh itu, hasil output ialah:
Penerangan: strpos() dan strrpos() fungsi
strpos($string,$find,$start)
Fungsi ini boleh mengembalikan kedudukan kejadian pertama subrentetan (sensitif huruf besar dan kecil); (kes-sensitif);
Fungsi strpos() dan strrpos() adalah serupa, kedua-duanya menerima dua parameter yang diperlukan strrpos($string,$find,$start)
(rentetan sedang dicari) dan
$string
$find
$start
Hasil output:
<?php header("Content-type:text/html;charset=utf-8"); $string = "ABCabcabcABC"; $findme1 = "c"; $findme2 = "C"; echo "子串 '$findme1' 第一次出现的位置:".strpos($string, $findme1); echo "<br>子串 '$findme1' 最后一次出现的位置:".strrpos($string, $findme1); echo "<br>子串 '$findme2' 第一次出现的位置:".strpos($string, $findme2); echo "<br>子串 '$findme2' 最后一次出现的位置:".strrpos($string, $findme2); ?>
Pembelajaran yang disyorkan: "
Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk mengesan sama ada subrentetan wujud dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!