PHP 常用的字符串函数(三)

今天整理 PHP 学习系列时,忽然发现漏掉了字符串函数(三),现在补上。上一篇(PHP 常用的字符串函数(二))我们讲解了关于 str_replace,str_ireplace,str_pad,str_repeat,str_split,strip_tags 的用法,其中 str_replace 是这几个函数中比较重要的。

关于上一篇文章的的测试题目,这里把答案贴一下:

1、将字符串 phpzheng 使用 # 填充到 10 个字符长度。

$str = 'phpzheng';

$pad_str = str_pad($str,10,'#');

2、将上面得到的字符串的 # 字符替换为 @ 字符

$str = 'phpzheng';

$pad_str = str_pad($str,10,'#');

$replace_str = str_replace('#','@',$pad_str);

今天,我们讲解 strpos(stripos),strstr(stristr),strlen,strtolower,strtoupper

strpos(stripos)

作用:查找字符串首次出现的位置,strpos 在查找时区分大小写,而 stripos 在查找时不区分大小写。

int stripos ( string $haystack , string $needle [, int $offset = 0 ] )

共 3 个参数,其中最后一个不常使用,该函数返回值是 int 类型,表示首次出现的位置

第一个参数$haystack:在该字符串中查找。

第二个参数$needle:一个单字符或者多字符的字符串(要查找的值是什么)。

第三个参数$offset:从字符此数量的开始位置进行搜索。 如果是负数,就从字符末尾此数量的字符数开始统计(从第几个字符开始查找,如果是负数,即倒着数,从第几个字符开始)。

7.1.0 开始支持负数的offset。

strstr(stristr)

作用:查找字符串的首次出现,strstr 在查找时区分大小写,而stristr在查找时不区分大小写。

string strstr ( string $haystack , mixed $needle [, bool $before_needle = FALSE ] )

共 3 个参数,其中第三个参数一个不常使用,但是确很有用。该函数返回值是 string 类型,返回字符串的一部分或者 FALSE(如果未发现 needle)。

第一个参数$haystack:输入字符串(在该字符串中查找)

第二个参数$needle:要查找的值是什么

第三个参数$offset:默认为 false,返回要查找的值后面部分,若为 TRUE,strstr() 将返回 needle 在 haystack 中的位置之前的部分(配合版本要大于5.3.0才可以使用这个参数)。

关于第三个参数的使用,这里贴一个官网的列子

strlen

作用:获取字符串长度

int strlen ( string $string )

传入一个字符串,返回该字符串的长度,很简单的一个函数,但很重要。

strtolower

作用:将字符串转化为小写

string strtolower ( string $string )

传入一个字符串,将字符串转化为小写,我们在写校验验证码功能时,经常用到这个函数。

strtoupper

作用:将字符串转化为大写

string strtoupper ( string $string )

传入一个字符串,将字符串转化为小写,我们在写校验验证码功能时,经常用到这个函数。

这一篇文章介绍的几个函数中,strpos,strstr 函数是经常使用的,下一篇文章分享函数 substr_count、substr_replace、substr、trim。

今日的测试题

1、返回字母 h 在字符串 phpzheng 中的位置

2、返回字符串 phpzheng 中字母 h 后面的子字符串

  • 发表于:
  • 原文链接:https://kuaibao.qq.com/s/20180726G179WU00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券