PHP 整理字符串
本文最后更新于:2024年3月18日 凌晨
PHP 整理字符串
- 通常,我们从文件或用户得到的字符串在使用前需要整理(Cleaning)原始数据的两个普遍问题是没用的空白符号(如空格,换行)的存在和不正确的字母大小写。
删除空白符
- 可以使用函数
trim()
,ltrim()
和rtrim()
删除字符串开头或结尾的空白符(whitespace):
1 2 3
| $trimmed = trim(string [,charlist ]); $trimmed = ltrim(string [,charlist ]); $trimmed = rtrim(string [, charlist ]);
|
trim()
返回删除首尾空白的字符串,ltrim()
(l是指left)只删除字符串开头的空白,rtrim()
(r是指right)只删除字符串末尾的空白,可选参数charlist是一个指定所有要删除字符的字符串,默认情况下要删除的字符如下表所示:
字符 |
ASCII值 |
意义 |
" " |
0x20 |
空格 |
“\t” |
0x09 |
制表符 |
“\n” |
0x0A |
换行 |
“\r” |
0x0D |
回车 |
“\0” |
0x00 |
字符 |
“\x0B” |
0x0B |
纵向列表符 |
1 2 3 4
| Stitle = " Programming PHP \n"; $str_1 = ltrim($title); $str_2 = rtrim($title); $str_3 = trim($title);
|
- 给出一行用制表符分隔的数据,使用charset参数来删除开头或结尾的空白而不删除制表符:
1 2
| $record = " Fred\tFlintstone\t35\tWilma \n"; $record = trim($record," \r\n\0\x0B");
|
改变大小写
- PHP有一些函数用于改变字符串的大小写:
strtolower()
和strtoupper()
操作整个字符串,ucfirst()
只操作字符串的第一个字母,ucword()
则操作字符串中每个单词的第一个字母,每一个函数都把字符串作为参数来执行,并适当地改变大小写,然后返回字符串的拷贝,例如:
1 2 3 4 5 6 7 8 9 10 11
| $string = "FRED flintstone"; $string = "barney rubble"; print(strtolower($string1)); print(strtoupper($string1)); print(ucfirst($string2)); print(ucwords($string2));
fred flinstone FRED FLINSTONE Barney rubble Barney Rubble
|
- 如果得到一个混合大小写的字符串,并想把它转换为"标题大写:形式,即每个单词的第一个字母大写而其他的字母小写(但是你不确定字符串以大写或小写开头),可以结合使用
strtolower()
和ucwords()
来完成:
1 2 3
| print(ucwords(strtolower($string1)));
Fred Flintstone
|