首頁 >後端開發 >php教程 >php中幾個常用的字串查找函數

php中幾個常用的字串查找函數

怪我咯
怪我咯原創
2017-07-07 09:57:5318438瀏覽

PHP 尋找字串常用函數介紹,主要介紹strstr的使用

一、strstr — 尋找字串的首次出現

string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] )
註1:$haystack是當事人字串,$needle是被找出的字串。此函數區分大小寫。
註2:回傳值是從needle開始到最後。
註3:關於$needle,如果不是字串,被當作整形來當字元的序號來使用。
註4:before_needle若為true,則回傳前東西。

程式碼如下:

<?php 
$email = &#39;yuxiaoxiao@example.com&#39;; 
$domain = strstr($email, &#39;@&#39;); 
echo $domain; // 打印 @example.com 
$user = strstr($email, &#39;@&#39;, true); // 从 PHP 5.3.0 起 
echo $user; // 打印 yuxiaoxiao 
?>


#二、stristr strstr不區分大小寫的版本
三、strpos -尋找字串首次出現的位置

int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )
註1:可選的offset 參數可以用來指定從haystack 中的哪一個字元開始查找。傳回的數位位置是相對於 haystack 的起始位置而言的。
四、substr -傳回字串的子字串

string substr ( string $string , int $start [, int $length ] )
$rest = substr("abcdef", -1 ); // 傳回"f"

註1:如果start 是非負數,則傳回的字串將從string 的start 位置開始,從0 開始計算。例如,在字串 “abcdef” 中,在位置 0 的字元是 “a”,位置 2 的字串是 “c” 等等。

註2:如果 start 是負數,則傳回的字串將從 string 結尾處向前數第 start 個字元開始。

註3:如果 string 的長度小於或等於 start,將會傳回 FALSE。

length

註4:如果提供了正數的 length,則傳回的字串將從 start 開始最多包含 length 個字元(取決於 string 的長度)。

註5:如果提供了負數的 length,那麼 string 末尾處的許多字元將會被漏掉(若 start 是負數則從字串尾部算起)。如果 start 不在這段文字中,那麼將會傳回一個空字串。

註6:如果提供了值為 0,FALSE 或 NULL 的 length,那麼將會傳回一個空字串。

註7:如果沒有提供 length,傳回的子字串將從 start 位置開始直到字串結尾。

 程式碼如下:

<?php 
$rest = substr("abcdef", 0, -1); // 返回 "abcde" 
$rest = substr("abcdef", 2, -1); // 返回 "cde" 
$rest = substr("abcdef", 4, -4); // 返回 "" 
$rest = substr("abcdef", -3, -1); // 返回 "de" 
?>

五、strrchr -找出指定字元在字串中的最後一次出現

string strrchr ( string $haystack , mixed $needle )

該函數傳回haystack 字串中的一部分,這部分以needle 的最後出現位置開始,直到haystack 結尾。

六、strripos -計算指定字串在目標字串中最後一次出現的位置(不區分大小寫)
七、stripos -查找字串首次出現的位置(不區分大小定)
八、strrpos -計算指定字串在目標字串中最後一次出現的位置

以上是php中幾個常用的字串查找函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn