梳理 php 关于 string 的小知识
拼接
两种方式:
第一种方式在PHP基础笔记之类型有提到,示例主要针对 sprintf 函数:
1 2 3 4 5 6 7 8
| <?php $name = 'Jack'; $age = 10;
echo sprintf('His name is %s.', $name);
printf('His name is %s, and he is %s.', $name, $age); ?>
|
格式化
number_format - 以千位分隔符方式格式化一个数字
- 如果要替换点千位分隔符需要加参数
ucfirst,lcfirst 首字母大|小写
trim 过滤掉字符串前后无用字符(空格,换行,缩进等)
ltrim 作用同上,但是只过滤字符串前面的无用字符
1 2 3 4 5 6 7 8 9 10 11
| <?php $numberFormat = '2387484' echo number_format($numberFormat, 2); echo number_format($numberFormat, 2, '.', ''); echo ucfirst('it\'s me!'); echo lcfirst('Hi!'); echo trim(' Hi! '); echo ltrim(' Hi!'); ?>
|
转化
这里只提及简单转化,不深入
数字
floatval 提取浮点值
intval 获取变量整数值
- 除此之外,你还可以用
settype 来转换
1 2 3 4 5 6 7 8 9 10
| <?php $a = '3.14158额'; $b = '1个'; $c = true;
echo floatval($a); echo intval($b); settype($c, 'string'); echo $c; ?>
|
数组
explode 按照特定字符分割成数组
str_split 按照步长分割数组
implode 可以把数组转化为字符串
1 2 3 4 5 6 7
| <?php $a = 'hello,world'; $b = explode(',', $a); $c = str_split($a, 2);
$d = implode(',', $b); ?>
|
查询字符串中特定的值
1 2 3 4 5 6 7 8 9 10 11
| <?php $content = '我竟无语凝噎'; $search = '无语';
$strpos = false !== strpos($content, $search); $strstr = false === strstr($search, $content); $strchr = false === strchr($search, $content); $regx = "/(无语)/"; $preg = (bool)preg_match($regx, $content); ?>
|
替换
1 2 3 4 5 6 7
| <?php echo str_replace('言', '颜', '我竟无言以对');
echo substr_replace('hello,world', 'hi', 0, 5); ?>
|
截取
1 2 3 4 5
| <?php echo substr('hello,world', 0, 5); echo substr('hello,world', 5, 1); echo substr('hello,world', 6, 5); ?>
|
重复
纯属个人喜好发现的好玩意
1 2 3
| <?php echo str_repeat('说了多少遍了,不要做六边形战士!', 3); ?>
|
To be continue