stripos
是 PHP 中的一個(gè)字符串函數(shù),用于查找子字符串在另一個(gè)字符串中首次出現(xiàn)的位置。它不區(qū)分大小寫。要處理特殊字符,你不需要對(duì)輸入字符串進(jìn)行任何預(yù)處理,因?yàn)?stripos
會(huì)自動(dòng)處理它們。
然而,如果你想在搜索子字符串之前對(duì)輸入字符串進(jìn)行清理,可以使用以下方法:
str_replace()
或 preg_replace()
函數(shù)刪除或替換不需要的特殊字符。例如,如果你想刪除所有非字母數(shù)字字符,可以使用以下代碼:$input = "Hello, W@orld! 123";
$clean_input = preg_replace("/[^a-zA-Z0-9]+/", "", $input);
stripos()
之前,確保輸入字符串是 UTF-8 編碼的。這可以通過使用 mb_convert_encoding()
函數(shù)來實(shí)現(xiàn):$input = "Hello, W@orld! 123";
$input_utf8 = mb_convert_encoding($input, "UTF-8", "auto");
然后,你可以使用清理后的輸入字符串調(diào)用 stripos()
函數(shù):
$search = "world";
$position = stripos($input_utf8, $search);
這將返回子字符串 “world” 在清理后的輸入字符串中首次出現(xiàn)的位置。