字符串定义语法:
1、单引号字符串:使用单引号包裹;
$a = 'hello';
2、双引号字符串:使用双引号包裹;
$b = "world";
比较适合定义比较短(不超过一行)或者没有结构要求的字符串,如有结构要求,或者内容超过一行,则需要以下两种结构定义
3、nowdoc字符串:没有单引号的单引号字符串;
$ 变量名 =<<<'边界符'
字符串内容
边界符;
$ c =<<<'EOD'
hello world
EOD;
4、heredoc字符串:没有双引号的双引号字符串;
$变量名=<<<边界符
字符串内容
边界符;
$d = <<<EOD
hello world!
EOD;
边界符规则:
1.上边界符后不能有任何内容,包括空格和注释
2.下边界符必须定格:在最左边
3.下边界符同样后面只能有分号,不能跟任何内容
字符串转义:
在计算机通用协议中,有一些特定的方式定义的字母,系统会特定处理,通常这种方式都是使用反斜杠+字母(单词)的特性
如: \r\n:换行
PHP在识别转义字符的时候也是使用同样的模式:反斜杠+字母
在PHP中 系统常用的转义符号:
\':在单引号字符串中显示单引号;
\":在双引号字符串中显示双引号;
\r:代表回车(理论是是回到当前行的首位置)
\n:代表新一行
\t:类似tab键,输出四个空格
\$:在PHP中使用$符号作为变量符号,因此需要特定识别
单引号和双引号的区别
1、其中单引号中只能够识别 \',而双引号中不能识别 \'
2、双引号中可以识别$符号,所以在双引号中可以识别,解析变量
双引号中变量识别的规则
I、变量本身系统能够与后面的内容区分,应该保证变量的独立性
II、使用变量专业标志符(区分),给变量加上大括号
字符串长度问题
1、基本函数:得到字符串长度——strlen()
echo strlen(‘变量’);
2、多字节字符串的长度问题:包含中文的长度;
3、多字节字符串扩展模块:mbstring扩展(mb:multi bytes)
3.1、首先需要加载PHP的mbstring扩展
可以使用mb扩展函数得到特定字符长度
字符串相关函数
1、转换函数:implode() , explode() , str_split()
implode(连接方式,数组):将数组中的元素按照某个规则连接成一个字符串;
explode(分割字符,目标字符串):将字符串按某个格式进行分割,变成数组;
str_split(字符串,字符长度):按照某种规则(指定长度)转换成数组;
2、截取函数trim() , ltrim() , rtrim()
trim(字符串[,指定字符]):本身默认是用来去除两边的空格(中间不行),但是也可以指定要去除的内容。
按照指定的内容,循环去除两边有的内容,直到碰到一个不是目标字符为止。
ltrim():去除左边的;
rtrim():去除右边的;
3、截取函数substr() , strstr()
substr(字符串,起始位置[,长度]):指定位置开始截取字符串,可以截取指定长度,不指定的话默认到最后;
strstr(字符串,匹配字符):从指定字符截取到最后(可以用来取文件后缀名);
4、大小写转换函数:strtolower() , strtoupper() , ucfirst()
strtolower():全部小写
strtoupper():全部大写
ucfirst():首字母大写
5、查找函数strps() , strrpos()
strpos():判断字符在目标字符串中首次出现的位置;
strrpos():判断字符在目标字符串中最后出现的位置;
6、替换函数:str_replace()
str_replacee(匹配目标,替换的内容,字符串):将目标字符串中部分字符串进行替换;
7、格式化函数:printf() , sprintf()
printf()/sprintf(输出字符串有占位符,顺序占位内容):格式化输出数据;
8、其他str_repeat() , str_shuffle()
str_repeat(重复内容,重复次数):重复某个字符串N次
str_shuffle( ):随机打乱字符串