您的位置:首页 > 编程语言 > PHP开发

php中的单引号、双引号和转义字符

2014-08-27 20:55 274 查看
PHP单引号及双引号均可以修饰字符串类型的数据,如果修饰的字符串中含有变量(例$name);最大的区别是: 双引号会替换变量的值,而单引号会把它当做字符串输出。

例如:

<?php

$name="string";

echo " 字符串" . '$name';

echo "字符串" . "$name";

?>

结果:

字符串$name

字符串string

在PHP中,理解单引号与双引号有什么区别是重要的。当所发送的数据中涉及到单引号和双引号时,在打印双引号时使用单引号,反之亦然,如:

echo 'She
said,"How are you?"';

print "I'm just ducky.";

或者,通过在有问题的字符前面放置一个反斜杠,对它进行转义:

echo "She said,\"How are you?\" ";

print 'I\'m just ducky.';

在PHP中,封闭在单引号内的值将照字面意义进行处理,而封闭在双引号内的值则将被解释。换句话说,把变量和特殊字符(见表1)放在双引号内将导致打印出它们所表示的值,而不是它们的字面值。如:

$var = 'test';

代码echo "var is equal to $var"; 将打印出 var is equal to test,而代码echo 'var is equal to $var'; 将打印出var is equal to $var。

使用一个转义的美元符号,代码echo"\$var is equal to $var"; 将打印出$var is equal to test,而代码echo '\$var is equal to $var'; 将打印出\$var is equal to $var。

表1 当在双引号内使用这些字符时,它们具有特殊的含义
转义字符代码转义字符的含义
\ "双引号
\ '单引号
\ \反斜杠
\ n换行符
\ r回车符
\ t制表符
\ $美元符号
正如以上例子所说明的,双引号将用变量的值(test)代替它的名称($var),并用特殊字符表示的值($)代替它的代码(\$)。单引号总是准确地打印你输入的内容,除了转义的单引号(\')和转义的反斜杠(\\)之外,它们将分别被打印为一个单引号和一个反斜杠。



提示:

1、由于PHP将试图找出那些需要将其值插入到双引号内的变量,所以从理论上讲,使用单引号要快一些。但是,如果需要打印一个变量的值,则必须使用双引号。

2、因为有效的HTML常常包括许多用双引号括住的属性,所以当利用PHP打印HTML时,使用单引号最容易。

echo '<table width="200" border="1" cellspacing="5" cellpadding="2" align="center">';

如果想使用双引号打印出上面这段HTML代码,将不得不对字符串中的所有双引号进行转义,所以相对来说较麻烦。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: