首页  >  文章  >  后端开发  >  php:字符串(string)数据类型实例详解

php:字符串(string)数据类型实例详解

怪我咯
怪我咯原创
2017-04-27 17:03:195363浏览

什么是字符串(string)?

字符串就是连续的字符序列,由数字,字母和符号组成。在字符串的每个字符只占用一个字节。

在PHP中,有三种定义字符串的方式,分别是单引号('),双引号(“)和定界符(<<<)。

单引号和双引号是经常被使用定义字符串的方式,定义如下:

单引号

<?php
$a=&#39;PHP中文网&#39;;
?>

双引号

<?php

$a="PHP中文网";
?>

单引号和双引号的不同之处就在双引号所包含的变量会自动的被替换成实际数值,而单引号所包含的的变量则按普通的字符创输出,这段换什么意思呢,我们下面来一下示例

单引号和双引号定义字符串不同之处的示例

<?php
header("Content-type:text/html;charset=utf-8");              //设置编码
$i=&#39;PHP中文网&#39;;                                              //声明一个字符串变量
echo "$i";                                                   //用双引号输出
echo "<p>";                                                  //输出短标记
echo &#39;$i&#39;;                                                   //用单引号输出
?>

示例运行结果如下图:

4.jpg

示例详解:

在这个示例中,我们分别使用单引号和双引号输出同一个变量,但是输出的结果完全不同,从上图就能看出,我们使用双引号输出的结果是变量的值,而使用单引号输出的是字符串“$i”。

除了上面的不同点之外,再有就是两者对转移字符的使用不不同。使用单引号是,只要对单引号“ ' ”进行转移即可,但使用双引号(")时,还要注意“ " ”、“$”等字符的使用,这些特殊字符都要通过转义符“\”来显示,常用的转义字符如下表:

常用的转义字符

转义字符 输    出
\n 换行
\r 回车
\t 水平制表符
\\ 反斜杠
\$ 美元符号
\' 单引号
\" 双引号
\[0-7]{1,3} 正则表达式匹配一个八进制符号表示的字符
 \x[0-9A-Fa-f]{1,2} 正则表达式匹配一个十六进制符号表示的字符

1486188938564607.gif这里有一点要注意的是,\n和\r在Windows系统中没有什么区别,都可以当作回车符。但是在Linux系统中则是两种效果,在Linux中,\n表示换到下一行,却不会回到行首;而\r表示光标回到行首,但仍然在本行,如果有使用Linux操作系统的,可以尝试一下。

如果我们对非转义字符使用了“\”,那么在输出时,“\”也会跟着一起被输出。

在定义一些简单的字符串是,使用单引号是一个更好的处理方式。如果使用双引号,PHP将花费一些时间来处理字符串的转移和变量的解析,因此,在定义字符串时,如果没有特别的要求,我们最好使用单引号

界定符

界定符(<<<)是从PHP4.0开始支持的。在使用后接一个标识符,然后是字符串,最后是同样的标识符结束字符串。界定符的格式如下:

$string=<<< str
 要输出的字符串
str

其中,str为指定的标识符

界定符示例

代码如下:

<?php
header("Content-type:text/html;charset=utf-8");              //设置编码
$i=&#39;PHP中文网&#39;;                                              //声明一个字符串变量
echo <<<std
这和双引号没什么区别,\$i同样可以被输出出来。<p>
\$i的内容为:$i
std
?>

代码运行结果:

1.jpg

实例详解:

在上面的示例中,我们使用了界定符输出变量的值,可以看到它和双引号没什么区别,包含的变量也被替换成实际数值。

1486188938564607.gif结束标识符必须单独另起一行,并且不允许有空格。在标识符前后有其他字符或符号,也会发生系统错误,包括注释。

下一节,我们给大家介绍标量数据类型中的“整型(integer)”。

以上是php:字符串(string)数据类型实例详解的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn