PHP 查找字符串常用函数介绍 |
本文标签:查找字符串 一、strstr — 查找字符串的首次出现 string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] ) 注1:$haystack是当事字符串,$needle是被查找的字符串 。该函数区分大小写 。 注2:返回值是从needle开始到最后 。 注3:关于$needle,如果不是字符串,被当作整形来作为字符的序号来使用 。 注4:before_needle若为true,则返回前东西 。 复制代码 代码如下: <?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不区分大小写的版本 三、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 -计算指定字符串在目标字符串中最后一次出现的位置 |