PHP 字符串 stristr()函數
stristr()是PHP的內置函數,用于在另一個字符串中搜索字符串的第一個出現,如果找到字符串,則返回其余部分。愛掏網 - it200.com它是一個 二進制安全 函數(二進制安全函數指的是可以在不修改文件內容的情況下對二進制文件進行操作的函數)。愛掏網 - it200.com
stristr()是一個 不區分大小寫 的函數,類似于strstr()。愛掏網 - it200.com這兩個函數都用于在另一個字符串中搜索字符串。愛掏網 - it200.com它們之間唯一的區別是stristr()是 不區分大小寫 的,而strstr()是 區分大小寫 的。愛掏網 - it200.com
注意:此函數是 二進制安全 和 不區分大小寫 的函數。愛掏網 - it200.com在stristr()函數中,’I’代表不區分大小寫。愛掏網 - it200.com
PHP stristr()函數的語法如下:
stristr (string,search, $before_search)
參數
$string (必填): 此參數是一個 必要的 參數,用于指定要搜索的字符串,意味著它是要在其中搜索$search(下面討論)值的主要字符串。愛掏網 - it200.com
$search(必填): 此參數與$string一樣也是 必填的 。愛掏網 - it200.com此參數指定要在$string中搜索的字符串。愛掏網 - it200.com如果此參數是數字或整數值而不是字符串,則將其作為ASCII值使用。愛掏網 - it200.com
$before_search(可選): 此參數是一個 可選的 參數,用于指定布爾值,默認值為 FALSE 。愛掏網 - it200.com如果我們將其設置為TRUE,則會返回搜索參數第一次出現之前字符串的部分。愛掏網 - it200.com
返回值
PHP的stristr()返回剩余的字符串(從匹配點開始),如果未找到我們要搜索的字符串,則返回FALSE。愛掏網 - it200.com
技術細節
PHP版本支持 | PHP 4及以上版本都支持這個函數。愛掏網 - it200.com |
---|---|
返回值 | 如果搜索的字符串未找到,它將返回剩余的字符串或返回False。愛掏網 - it200.com |
更新日志 |
- 在PHP 5.3中,此函數中添加了before_search參數。愛掏網 - it200.com
- 在PHP 4.3中,stristr()函數成為了一個二進制安全的函數。愛掏網 - it200.com
示例
以下是一些示例,通過這些示例你可以學習如何在程序中實際應用stristr()函數。愛掏網 - it200.com
Input:
string = "Hello PHP! ",search = "PHP ";
Output: PHP!
Input:
string = "Hello PHP! ",search = "p ", before_search = true; //case-insensitive
Output: Hello
Input:
string = "Hello PHP! ",search = "K ", before_search = true;
Output:
以下是一些詳細示例:
示例 1
這是一個簡單的stristr()示例,它顯示了它是一個不區分大小寫的函數,并返回$search變量找到的字符串的其余部分。愛掏網 - it200.com
<?php
string = "Welcome to javaTpoint";search1 = "a";
echo stristr(string,search1);
echo '</br>';
search2 = "J"; //case-insensitive
echo stristr(string, search2);
echo '</br>';
echo stristr(string, "WELcoME");
?>
輸出:
示例2
在這個示例中,我們使用了第三個參數,即before_search = true,它將返回字符串中第一次出現search1變量之前的部分,否則返回布爾值 false 。愛掏網 - it200.com
<?php
string = "Welcome to javaTpoint";before_search = true;
search1 = "k";
echo stristr(string, search1,before_search);
echo '</br>';
search2 = "A";
echo stristr(string, search2,before_search);
echo '</br>';
search3 = "Bhava";
var_dump(stristr(string, search3,before_search));
?>
輸出:
我們使用 var_dump() 函數來打印false值,因為echo不能足夠地打印這個布爾值,正如你在搜索$search1值時看到的輸出結果。愛掏網 - it200.com
示例 3
在這個示例中,我們將在$search中傳遞一個整數,而不是字符串或字符。愛掏網 - it200.com它將該整數值視為ASCII值。愛掏網 - it200.com
<?php
var_dump(stristr("I want to see the world", 117)); //117 is the ASCII value of lowercase u
echo '</br>';
var_dump(stristr("I want to see the world", 119)); //119 is the ASCII value of lowercase w.
echo '</br>';
echo stristr("I want to see the world", 78); //78 is the ASCII value of uppercase N.
?>
輸出:
注意: var_dump()函數還會打印包括空格在內的字符數量以及返回類型。愛掏網 - it200.com例如,false 是一個布爾值,而在第二行中,stristr() 返回的字符數量是一個字符串。愛掏網 - it200.comEcho 不顯示這些信息。愛掏網 - it200.com