PHP基础(五)字符串

字符串类型

1)单引号字符串:使用单引号包裹 单引号里面的不进行解释,直接输出。

2)双引号字符串:使用双引号包裹 双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。

       引号方式:比较适合定义那些比较短(不超过一行)或者没有结构要求的字符串,如果有结构要求,或者内容超过一行,可以使用以下两种结构来定义:

3)nowdoc字符串:没有单引号的单引号字符串

$str = <<<’边界符’

              字符串内容

边界符;

4)heredoc字符串:没有双引号的双引号字符串

$str = <<<边界符

              字符串内容

边界符;

 

 

heredoc 和newdoc比引号区别多一点。

 

 

结构化定义字符串变量的规则:(heredoc 和 newdoc)

1、结构化定义字符串对应的边界符有条件:

1.1 上边界符后面不能跟任何内容(空格、注释也不能跟)

       1.2 下边界符必须顶格(最左边)

       1.3 下边界符同样后面只能跟分号,不能跟其他任何内容

2、结构化定义字符串的内部(边界符之间)的所有内容都是字符串本身(包括注释)。会当字符串全部输出。

 

字符串转义

 

转义的含义:在计算机通用协议中,有一些特定的方式定义的字母,系统会特定处理,通常这种方式都是使用反斜杠+字母(单词)的特性。

\r\n:回车换行。

 

PHP转义字符:

\’  :在单引号字符串中显示单引号

\”  :在双引号字符串中显示双引号

\$ :在PHP中使用$符号作为变量符号,因此需要特别识别。

\r   \n    \t

 

单引号和双引号的区别:

1、单引号字符串中能识别\’,双引号字符串中就不能识别\’。

 

2、双引号中因为能够识别$符号,所以双引号中可以解析变量,单引号中不可以。

 

 

双引号中变量识别的规则:

1)变量本身系统能够与后面的内容区分:应该保证变量的独立性,不要让系统难以区分

 

2)使用变量专业标识符(区分),给变量加上一组大括号{}。

 

字符串长度

 

1)基本函数strlen():得到字符串的长度(字节为单位)

2)多字节字符串的长度问题:包含中文的长度

利用多字节字符串扩展模块:mbstring扩展(mb:Multi Bytes)

首先需要加载PHP的mbstring扩展

 

可以使用mb扩展带来很多函数

mbstring扩展针对的是一些关于字符统计:strlen()只是针对标准交换码ASCII,mbstring会针对不同的字符集。

如:mb_strlen($str,’utf-8’);

 

字符串相关函数

1)转换函数;implode()、explode()、str_split()

implode(连接方式,数组):将数组中的元素按照某个规则连接成一个字符串

explode(分割字符,目标字符串):将字符串按照某个格式进行分割,变成数组

str_split(字符串,字符长度):按照指定长度拆分字符串得到数组

 

2)截取函数:trim()、ltrim()、rtrim()

trim(字符串[,指定字符]):本身默认用来去除两边的空格(中间不行),但是也可以指定要去除的内容,是按照指定的内容循环去除两边有的内容,直到碰到一个不是目标字符串为止

ltrim():去除左边的空格或者其他字符

rtrim():去除右边的空格或者其他字符

 

3)截取函数:substr()、strstr()

substr(字符串,起始位置从0开始[,长度]):指定位置开始截取字符串,可以截取指定长度(不指定到最后)

strstr(字符串,匹配字符):从指定位置开始截取到最后(可以用来取文件后缀名)

 

 

 

4)大小转化函数:strtolower()、strtoupper()、ucfirst()

strtolower(字符串):全部小写

strtoupper(字符串):全部大写

ucfirst(字符串):首字母大写(首字母为空格则看不出效果)

 

5)查找函数:strpos()、strrpos()

strpos():判断字符在目标字符串中首次出现的位置

strrpos():判断字符在目标字符串中最后出现的位置

 

6)替换函数:str_replace()

str_replace(mixed $search , mixed $replace , mixed $subject):将目标字符串中部分字符串进行替换

 

7)格式化函数:printf()、sprintf()

printf()/sprintf():(输出字符串有占位符,顺序占位内容)格式化输出数据

 

8)其他:str_repeat()、str_shuffle()

str_repeat((string $input , int $multiplier):重复某个字符串n次

str_shuffle():随机打乱字符串

posted @ 2018-08-27 17:28  LionelYee  阅读(176)  评论(0编辑  收藏  举报