PHP8 中供应了大量用来处理字符串的内置函数,利用这些内置函数,可以在 PHP8 程序中很方便地完成对字符串的各种操作。在本文中,我们通过详细的实例加深对字符串函数的理解。
1、去除字符串首尾空格和分外字符
空格在很多情形下是不必要的,以是常常会涉及到打消字符串的空格。比如某些程序中,涌现了不必要的空格,就会大大的增加了程序出错的概率。
清理空格和分外字符,我们用到了trim()、rtrim()和ltrim()函数。

trim()函数是从字符串两边同时去除空格和分外字符的。语法格式如下:
trim(string,charlist)
个中,string是须要检讨的字符串,charlist为可选参数,用于设置须要被去除的字符。如果不设置该参数,则以下字符将被删除。
a、"\0":NULL,空值。
b、"\t":制表符。
c、"\n":换行符。
d、"\x0B":垂直制表符。
e、"\r":回车符。
f、" ":空格。
接下来,我们利用一个案例来做一个示范,代码如下:
<?php$a = "我们正在学习的是PHP8###";echo "原文输出的是:" .$a;echo "<br>"; $a = trim($a,""); //去除前面的$a = trim($a,"#"); //去除后面的#echo "处理往后输出的是:" .$a;?>
上面的代码,在PHP8中运行的结果如下:
原文输出的是:我们正在学习的是PHP888###处理往后输出的是:我们正在学习的是PHP888
1.2、ltrim()函数
ltrim()函数从左侧清楚字符串的空格和分外字符。语法格式如下:
ltrim(string,charlist)
个中,string是须要检讨的字符串,charlist为可选参数,用于设置须要被去除的字符。
示例代码:
<?php$a = "PHP8";echo "原文输出的是:" .$a;echo "<br>"; $a = ltrim($a,""); //去除左侧的echo "处理往后输出的是:" .$a;?>
在PHP8中运行的结果是:
原文输出的是:PHP8处理往后输出的是:PHP8
1.3、rtrim()函数
rtrim()函数从右侧清楚字符串的空格和分外字符。语法格式如下:
rtrim(string,charlist)
个中,string是须要检讨的字符串,charlist为可选参数,用于设置须要被去除的字符。
示例代码:
<?php$a = "PHP8";echo "原文输出的是:" .$a;echo "<br>"; $a = rtrim($a,""); //去除左侧的echo "处理往后输出的是:" .$a;?>
在PHP8中运行的结果是:
原文输出的是:PHP8处理往后输出的是:PHP8
在PHP8中,打算字符串长度的函数有:strlen()和mb_strlen()。当字符串全部是英文的时候,strlen()和mb_strlen()是一样的。当字符串里面包含中笔墨符时二者就不一样了,当有中文的时候就利用mb_strlen()的才行。strlen()就统计不准确了。
说到中笔墨符,我们就来先解释一下,各种类型的字符串所占用的字节。
数字、英文、小数点、下划线和空格占一个字节。
一个汉字占2-4字节,详细占几个字节,根据利用什么编码决定的。汉字在GBK/GB2312编码中占2个字节,在UTF-8/Unicode中一样平常占3个字节(2-4字节也有)。一个中文的标点符号,也是两个字符。现在我们写网页的编码基本上都是国际编码UTF-8。
接下来利用strlen()函数和mb_strlen()函数获取字符串的长度。
2.1、strlen()函数
strlen()函数紧张用于获取字符串的长度,语法如下:
strlen($str)
个中,str便是须要打算长度的字符串。还有一个便是返回值,如果成功返回字符串str的长度,如果str为空,则返回0.
示例:
<?php$a = "你好,天下";$b = "hello world";$c = "HELLO WORLD";echo "字符串a的长度为:".strlen($a);echo "<br>"; echo "字符串b的长度为:".strlen($b);echo "<br>"; echo "字符串c的长度为:".strlen($c);?>
以上代码在PHP8中,运行的结果为:
字符串a的长度为:15字符串b的长度为:11字符串c的长度为:11
以上结果可以看出,大小写是一样的,但是中文的输出你们以为对吗?
如果说输出的是字节的大小,那还算是对的,但是如果是字符串的长度,那肯定是不对的。
接下来就学习利用mb_strlen()函数来统计带中文的字符串。
2.2、mb_strlen()函数
mb_strlen()函数用于统计带中笔墨符串的长度,mb_strlen()函数语法格式如下:
mb_strlen($str,$encoding)
个中,str:便是打算长度的字符串。
encoding:便是字符串编码。如果省略,则利用内部字符编码。
返回值:返回具有encoding编码的字符串包含的字符数。多字节的字符被记为1.如果给定的encoding无效则返回FALSE。
mb_strlen()函数和strlen()函数用法上面大体同等,多了一个字符编码的可选参数而已。
示例代码:
<?php$a = "你好,天下";$b = "hello world";$c = "HELLO WORLD";echo "字符串a的长度为:".mb_strlen($a);echo "<br>"; echo "字符串b的长度为:".mb_strlen($b);echo "<br>"; echo "字符串c的长度为:".mb_strlen($c);?>
以上代码在PHP8中的运行结果为:
字符串a的长度为:5字符串b的长度为:11字符串c的长度为:11
字符串的操作的内容太多了,多分一天来写了。来日诰日连续写后面的字符串的操作。