第5章 PHP对字符串的处理
PHP对字符串的处理的完美支持,是PHP的强大功能之一。PHP提供了数十个用来处理字符串的内置函数,使用这些函数,可以在PHP程序中很方便地完成对字符串的各种操作。本章为读者介绍PHP开发中一些比较常用的字符串处理函数。
本章主要涉及的知识点有:
❑掌握字符串的一些基本操作,如比较、替换、分割、合并
❑学习如何格式化字符串的输出
❑掌握字符串的一些常见操作,如大小写转换、数组互换、去掉空格等
5.1 对字符串做分割和合并
在PHP程序中,可以使用函数explode()用一个字符串分割另一个字符串,该函数的语法如下所示。
array explode(string$separator,string$str[,int$limit])
函数explode()使用字符串$separator(该函数的第1个参数)作为边界点,来分割字符串$str(该函数的第2个参数)。该函数的返回值是一个数组,字符串被分割后,分割的部分会存入该数组。该函数最后一个参数$limit是可选参数。如果设置了该参数,则返回的数组中最多有limit个元素,最后一个元素包含字符串$str的所有剩余部分。代码5-1演示了该函数的用法。
代码5-1 使用函数explode()分割字符串5-1.php
01 <?php
02 $str="tea,milk,coffee,juice";
03 $arr=explode(',',$str);//分割字符串
04 echo"<pre>";
05 print_r($arr);
06
07 $arr=explode(',',$str,2);//分割字符串,只保留2个元素
08 print_r($arr);
09 ?>
【代码解析】这段程序第2行首先使用“,”分割字符串“tea,milk,coffee,juice”,分割后的部分tea、milk、coffee和juice成为数组$arr的4个单元值,即成为数组的元素。接着程序向函数explode传入第3个参数,此时,函数explode()的返回数组只有两个单元,第1个单元存放“tea”,而第2个单元存放字符串$str的剩余部分。代码5-1的执行结果如图5-1所示。
注意 关于字符串合并操作,常见的是使用“.”运算符,通过该运算符可以将多个字符串合并成一个字符串,这个运算符已经在前面的讲述中大量使用过。
这里要介绍的字符串合并操作是指,使用函数implode()将数组中的元素组成一个字符串。该函数的语法如下所示。
string implode(string$bds,array$arr);
函数implode()将数组$arr的元素组合成一个字符,每个元素之间使用string类型的参数$bds的值作为连接符。该函数返回合并后的字符串。代码5-2演示了该函数的用法。
代码5-2 使用函数implode()将数组元素组成一个字符串5-2.php
01 <?php
02 $drink_arr=array(
03 "tea",
04 "milk",
05 "coffee",
06 "juice"
07 );//定义数组$drink_arr
08
09 $drink_str=implode('|',$drink_arr);//将数组元素组成一个字符串
10
11 echo"drink_str=".$drink_str;
12 ?>
【代码解析】这段程序第9行通过函数implode()使用符号“|”,将数组$drink_arr中的元素组合成一个字符串,并向页面输出这个字符串。代码5-2的执行结果如图5-2所示。