上一篇文章,我们讲解了关于 strpos(stripos),strstr(stristr),strlen,strtolower,strtoupper 的用法,其中 strpos,strstr 是这两个函数中比较重要的。
关于上一篇文章的的测试题目,这里把答案贴一下:
1、返回字母 h 在字符串 phpzheng 中的位置
echo strpos('phpzheng', 'h');
2、返回字符串 phpzheng 中字母 h 后面的子字符串
echo strstr('phpzheng', 'h');
今天,我们讲解四个函数,分别是:
substr_count、
substr_replace、
substr、trim
substr_count
作用:计算字串出现的次数。
int substr_count ( string $haystack , string $needle [, int $offset = 0 [, int $length ]] )
共 4 个参数,其中最后一个不常使用,该函数返回值是 int 类型,表示查找的子字符串的出现次数。
第一个参数 $haystack:在该字符串中查找。
第二个参数 $needle:一个单字符或者多字符的字符串(要查找的值是什么)。
第三个参数 $offset:开始计数的偏移位置。如果是负数,就从字符的末尾开始统计。(从第几个字符开始查找,如果是负数,即倒着数,从第几个字符开始)。
第四个参数我个人觉得没有说明的必要
substr_replace(这个函数很好用,使用频率非常高,一定要熟练掌握)
作用:替换字符串的子串
mixed substr_replace ( mixed $string , mixed $replacement , mixed $start [, mixed $length ] )
共 4 个参数,其中第三个参数一个不常使用,但是确很有用。该函数返回值是 string 类型,返回字符串的一部分或者 FALSE(如果未发现 needle)。
第一个参数 $string: 输入字符串(在该字符串中查找替换),也可以传入数组,表示在没有数组的值中进行替换和查找(对数组不了解的朋友,可以先不关注数组的使用,后面介绍数组的时候,我会在给大家说说)
第二个参数$replacement:替换字符串。
第三个参数 $start:如果 start 为正数,替换将从 string 的 start 位置开始;如果 start 为负数,替换将从 string 的倒数第 start 个位置开始。
第四个参数 $length:如果设定了这个参数并且为正数,表示 string 中被替换的子字符串的长度。如果设定为负数,它表示待替换的子字符串结尾处距离 string 末端的字符个数。如果没有提供此参数,那么它默认为 strlen( string ) (字符串的长度)。当然,如果 length 为 0,那么这个函数的功能为将 replacement 插入到 string 的 start 位置处。
关于这个函数的使用,这里贴两个官网的列子
substr(这个函数很好用,使用频率非常高,而且很容易理解,一定要熟练掌握)
作用:截取字符串,返回字符串的子串
string substr ( string $string , int $start [, int $length ] )
共 3 个参数,其中最后一个不常使用,该函数返回值是 int 类型,表示查找的子字符串的出现次数。
第一个参数 $string:对该字符串进行截取
第二个参数 $start:
如果 start 是非负数,返回的字符串将从 string 的 start 位置开始,从 0 开始计算。例如,在字符串 “abcdef” 中,在位置 0 的字符是 “a”,位置 2 的字符串是 “c” 等等。
如果 start 是负数,返回的字符串将从 string 结尾处向前数第 start 个字符开始。
如果 string 的长度小于 start,将返回 FALSE。
第三个参数 $length:
如果提供了正数的 length,返回的字符串将从 start 处开始最多包括 length 个字符(取决于 string 的长度)。
如果提供了负数的 length,那么 string 末尾处的 length 个字符将会被省略(若 start 是负数则从字符串尾部算起)。如果 start 不在这段文本中,那么将返回 FALSE。
如果提供了值为 0,FALSE 或 NULL 的 length,那么将返回一个空字符串。
如果没有提供 length,返回的子字符串将从 start 位置开始直到字符串结尾。
trim
作用:去除字符串首尾处的空白字符(或者其他字符)
string trim ( string $str [, string $character_mask = " \t\n\r\0\x0B" ] )
此函数返回字符串 str 去除首尾空白字符后的结果。如果不指定第二个参数,trim() 将去除这些字符:
" " (ASCII 32 (0x20)),普通空格符。
"t" (ASCII 9 (0x09)),制表符。
"n" (ASCII 10 (0x0A)),换行符。
"r" (ASCII 13 (0x0D)),回车符。
"\0" (ASCII 0 (0x00)),空字节符。
"x0B" (ASCII 11 (0x0B)),垂直制表符。
至此,常用字符串函数的介绍就全部分享完成了,下篇文章,我打算对这些字符串函数做一次复习,同时对数组的介绍做个简单介绍
今日的测试题
1、将字符串 phpzheng 进行截取,返回 zheng
2、计算字符串 phpzheng 中,字母 h 出现的次数
2、计算字符串 phpzheng 中的字母 h ,替换为 t
领取专属 10元无门槛券
私享最新 技术干货