<?php
//字符串
//1单引号
//不解析内部的变量,转义字符‘\’在单引号中只能转义自身和单引自己,不能转义特殊字符:\r\t\n
$str='这是一个单引\\号字符串'.'<br>';
// echo $str.'<br>';
//双引号
//解析字符串的变量,给变量用定界符包起来{$str}
$str1="这是一个包含变量{$str}的双引号字符串";
// echo $str1.'<br>';
//heredoc
//内部的字符串不需要添加定界符
//功能与双引号定义的字符串类似
//适合输出HTML+php的代码
echo <<< H
echo $str1.'使用heredoc'.'<br>'
H;
//nowdoc
//内部的字符串不需要添加定界符,转义字符不需要额外转义
//功能与单引号定义的字符串类似
echo <<< a
$str\
a;
//string打印输出函数
$site='zifuchuan';
printf('hello %s',$site);
echo '<br>';
//格式化输出字符,%s:字符串 %d:数值
printf('hello %s,world %d',$site,5);
//与printf的区别在参数上可以使用数组
vprintf('hello %s,world %d',[$site,5]);
//sprintf()和printf()功能一样,但是它是返回,不是打印
echo sprintf('hello world');
echo '<br>';
//vsprintf()返回格式化字符串
echo vsprintf('hello world%s',$site);
echo '<br>';
//把格式化字符串写入到一个文件流中
$file=fopen('./test.txt','w');
fprintf($file,sprintf('写入文件test.txt'));
//获取文件中的内容
echo file_get_contents('test.txt');
//sscanf()根据指定的格式解析来自一个字符串的输入
//010是固定的格式,后面的数字是变化的 ,sscanf()返回的就是后面变化的数字
// var_dump(sscanf('010-123','010-%d'));
list($sc)=sscanf('010-1222121','010-%d');
echo $sc;
echo '<br>';
// number_format(): 数值格式化
echo number_format(12345.67), '<br>';
//通过千位分组来格式化数字, 2代表小数点后几位数
echo number_format(12345.673, 2), '<br>';
//千位分隔符 小数点的符号 .
echo number_format(12345.673, 3, '.', ''), '<br>';
//千位分隔符 .小数点的符号 -千位数的分隔符号
echo number_format(12345.67, 2, '.', '-'), '<br>';
//implode用指定字符组装成一个字符串返回
$str_=implode('---',['java','python','php']);
echo $str_.'<br>';
//explode用指定字符将一个字符串拆分开,数组形式返回
printf('<pre>%s</pre>',print_r(explode('---',$str_,3),true));
//截取字符串 参数1要截取的字符串,参数2,开始截取的下标位置
//参数3,截取字符的个数
echo substr('hello world',2,3);
//计算子字符串在字符串中出现的次数,
echo substr_count('hello helloworld world','l');
echo '<br>';
//substr_replace替换字符串中的元素(不区分大小写)
echo substr_replace('hello world','tt',6);
//str_split()将字符串分割成数组,可选参数按个数分割
print_r(str_split('hello',2));
echo '<br>';
//移除字符串右侧的字符 ,默认去除空白字符
$str='hello world';
echo chop($str,'ld');
//把字符串中的首字符转换为小写
echo lcfirst('Hello word');
//trim函数移除字符串的左L右r空白字符,活其他预定义字符
$str='hello world!';
echo rtrim($str,'!');
echo '<br>';
//查找字符串在另一字符串中第一次出现的位置(不区分大小写)
echo stripos('I love php,iiiifephp too','love');
echo '<br>';
//比较两个字符串
echo strcmp('world','earth');
echo '<br>';
//类似strcmp,多了一个长度参数,可以规定比较字符的长度
echo strncmp("Hello world!","Hello earth!",6);
//strpbrk() 函数在字符串中搜索指定字符中的任意一个。(区分大小写)
echo strpbrk("Hello world!","!");