PHP 查找字符串常用函數(shù)介紹,主要是介紹strstr的使用
一、strstr — 查找字符串的首次出現(xiàn)
string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] ) 注1:$haystack是當(dāng)事字符串,$needle是被查找的字符串。該函數(shù)區(qū)分大小寫。 注2:返回值是從needle開始到最后。 注3:關(guān)于$needle,如果不是字符串,被當(dāng)作整形來作為字符的序號來使用。 注4:before_needle若為true,則返回前東西。 復(fù)制代碼 代碼如下: <?php $email = 'yuxiaoxiao@example.com'; $domain = strstr($email, '@'); echo $domain; // 打印 @example.com $user = strstr($email, '@', true); // 從 PHP 5.3.0 起 echo $user; // 打印 yuxiaoxiao ?> 二、stristr strstr不區(qū)分大小寫的版本 三、strpos -查找字符串首次出現(xiàn)的位置 int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] ) 注1:可選的 offset 參數(shù)可以用來指定從 haystack 中的哪一個字符開始查找。返回的數(shù)字位置是相對于 haystack 的起始位置而言的。 四、substr -返回字符串的子串 string substr ( string $string , int $start [, int $length ] ) $rest = substr("abcdef", -1); // 返回 "f" 注1:如果 start 是非負(fù)數(shù),返回的字符串將從 string 的 start 位置開始,從 0 開始計(jì)算。例如,在字符串 “abcdef” 中,在位置 0 的字符是 “a”,位置 2 的字符串是 “c” 等等。 注2:如果 start 是負(fù)數(shù),返回的字符串將從 string 結(jié)尾處向前數(shù)第 start 個字符開始。 注3:如果 string 的長度小于或等于 start,將返回 FALSE。 length 注4:如果提供了正數(shù)的 length,返回的字符串將從 start 處開始最多包括 length 個字符(取決于 string 的長度)。 注5:如果提供了負(fù)數(shù)的 length,那么 string 末尾處的許多字符將會被漏掉(若 start 是負(fù)數(shù)則從字符串尾部算起)。如果 start 不在這段文本中,那么將返回一個空字符串。 注6:如果提供了值為 0,F(xiàn)ALSE 或 NULL 的 length,那么將返回一個空字符串。 注7:如果沒有提供 length,返回的子字符串將從 start 位置開始直到字符串結(jié)尾。 復(fù)制代碼 代碼如下: <?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 -查找指定字符在字符串中的最后一次出現(xiàn) string strrchr ( string $haystack , mixed $needle ) 該函數(shù)返回 haystack 字符串中的一部分,這部分以 needle 的最后出現(xiàn)位置開始,直到 haystack 末尾。 六、strripos -計(jì)算指定字符串在目標(biāo)字符串中最后一次出現(xiàn)的位置(不區(qū)分大小寫) 七、stripos -查找字符串首次出現(xiàn)的位置(不區(qū)分大小定) 八、strrpos -計(jì)算指定字符串在目標(biāo)字符串中最后一次出現(xiàn)的位置 |
|