PHP学习之基础教程 (一) 字符串相关函数

PHP学习之基础教程 (一) 字符串相关函数

(看到面试题有这个,在这里做一下笔记,放假了,要回家了,博客这两天先不更新呢,小程序的笔记不急呀,后面的内容我在思考怎么讲的清楚点,特别是令牌和微信支付)

十一种常用 字符串相关函数

1.explode()函数 (分隔)

开发过程中需要对字符串进行分隔,获取部分字符串

声明如下:

array explode(string $separator,string $str[,int $limit])

array $separator $str $limit
数据类型 字符串的分隔符 要分隔的字符串 (可选)最多包含的元素个数

limit为正数:返回的元素将最多包含limit个元素,其中最后的元素将包含$str的剩余部分
limit为负数:返回除了最后的limit个元素外的所以元素
limit为0:它会当做1

用代码试一下:
在这里插入图片描述

在这里插入图片描述
从左向右,从第一个“ ,” 开始截取
如果separator传入的字符串在str中不到,那么 explode画数将返回包合str单个元素的数组;
如果给参教separator传入空值,那么 explode()函数将返回 false

2.implode()函数 (拼接)

可以通过调用implode()函数实现字符数组的拼接功能

string implode(string $glue,array $arr)

array $glue $arr
数据类型 字符串的连接符 要连接的数组

用代码试一下:
在这里插入图片描述
在这里插入图片描述

3.strcmp()函数 (比较)

比较字符串大小

int strcmp(string $str1,string $str2)
(整型比较)

需要注意的是,在PHP中,每个字符都有对应的ASCII码值。
首先比较第一个字符的大小如果相等则继续比较第二个字符、如果第二个字符也相同,则继续比较第三个字符,以此类推,直到比较到有不相同的字符或者到字串的结尾オ结束比较,此时返回比较结果。

如果字符串str1和str2相等,则函数返画0;
如果小于,则函数返回值小于0的值;
如果大于,则函数返回大于0的值。

用代码试一下:
在这里插入图片描述
在这里插入图片描述
注意:strcmp()和“==”都可以比较
strcmp()相等时返回 0
双等号返回 true

4.str_replace()函数 (替换)

对字符串的字符进行替换
$str str_replace(string $search,sttring $replace,string $subject[, int $count])

$search $replace $subject $count
目标值 替换值 需要被操作的字符串 目标值被替换的次数

注意:完成str_replace()函数调用后,该参数还可以在函数的外部直接被调用

用代码试一下:
在这里插入图片描述
在这里插入图片描述

5.substr()函數 (截取)

开发中需要截取字符串的一部分
(获取字符串的某个字串)

string substr ( string $str , int $start [, int $length ] )

$str $start length
待处理的字符串 此处开始截取 截取字串的长度

($length为空默认截取到字符串的末尾)

用代码试一下:
在这里插入图片描述
在这里插入图片描述

6.strten()函数 (测长)

统计字符串的长度,字符的个数
int strlen(string $str)

7.trim()函数 (滤白)

过滤字符串中的空白字符,如输入密码时的过滤空格
string trim(string $str[,string $charlist])

charlist是可选的,如果指定了 c h a r l i s t , charlist,函数会删除 charlist指定的字符,若没有,则删除字符串中的空白字符

PHP中,常见空白字符:

1."\0" ASCII 0, NULL
2."\t" ASCII 9 , 制表符
3."\n" ASCII10,新行
4.“x0B” ASCII11,垂直制表符
5.“r” ASCI113,回车
6." " ASCII32,空格

8.strtoupper()函数 (换大)

把字符串换为大写
(相对 strtolower() 改成小写)
在这里插入图片描述
在这里插入图片描述

9.strstr()函数 (第一)

查找字符串的第一个匹配项

二进制安全

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

$haystack $needle $before_needle
输入的字符串 要查找的字符串 可选参数

在这里插入图片描述
在这里插入图片描述
注意:

此功能区分大小写。对于不区分大小写的搜索,请使用 stristr()。

10.strrchr()函数 (最后)

查找字符串中最后一个字符

string strrchr ( string $haystack ,mixed $needle )

$haystack $needle
输入的字符串 要查找的字符串

注意:此功能是二进制安全的。

二进制安全:只关心二进制化的字符串,不关心具体格式.只会严格的按照二进制的数据存取.不会妄图已某种格式解析数据.有时候以错误的格式打开一个文件,会导致文件发生不可逆的损坏.而二进制安全就是说会避免这种损坏

11.strcoll()函数 (区比)

基于区域的字符串比较

strcoll ( string $str1 , string $str2 )
请注意,此比较区分大小写

如果str1小于, 则返回<0 str2;
如果str1大于 0则> 0 str2,
如果它们相等则为0

函数strcoll,它是非二进制安全,而strcmp则是二进制安全的
对比一下
在这里插入图片描述

在这里插入图片描述
(在火车上赶的)

真的很抱歉,水平有限,对于这些函数只能大致了解他们的功能,对于他们背后的意义和价值,以及他们之间的区别不能很好理解

所以建议大家最好还是对照PHP手册仔细看一看

猜你喜欢

转载自blog.csdn.net/qq_43204040/article/details/86445211