当前位置:首页 > 知道中心 > PHP > 文章

PHP中单引号和双引号的区别

发表于:2013-09-08| 次阅读| 作者:藕码网
TAG: php
摘要:在PHP中,通常一个字符串被定义在一对单引号中,PHP语法解析器是用成对的引号来判断一个字符串的。那么,单引号和双引号,到底有什么不同呢?

在程序语言中,无论是单引号还是双引号,都有很重要的作用,在PHP语言中也一样。跟ASP相比,PHP的引号更好用,在ASP中,要把数据代入变量就必须用双引号包含起来,而且里面要用到引号的情况下只能用单引号,不能用双引号,如果用了双引号就会把其当作前一个引号的结束符。

但在PHP中就没有这个限制了。代值进去变量,单引号和双引号都可以使用, 但要成对使用。

在PHP中,如果只是用于没有包含变量的文本型数据,单引号和双引号是没有什么区别的。但如果要使用变量,单引号和双引号就有区别了。

在PHP中,双引号里可以直接代入变量,而无需转定义或者其他符号,

如:
$b
 = “cat”;$a = “This is a $b”;//显示This is a cat 

单引号则不行,如果
$a
 = ‘This is a $b’;//则显示为:This is a $b。 

在运行效率上单引号和双引号也是有区别的,一般来说单引号的运行速度会比较快,双引号会比较慢,原因在于双引号要先查找语句中是否有变量,而单引号则不用,因此,如果语句中没有代入变量尽量采用单引号。这是写程序一种习惯,时刻想着提高程序的效率。

如果在语句中要转定义操作,那么就一定要用双引号了。

比如,转定义单引号时,写成这样的话:

$a = ‘He\’s name is Tom.’ ; 

程序会把He\’s name is Tom.原封不动的显示出来,如果这样写:

$a = “He\’s name is Tom.”; 

程序就会显示:He’s name is Tom.

单引号是sql语句的绊脚石,在sql语句中的文本型数据都要用单引号来包含,因此数据中如果出现单引号,数据库会认为数据结束,那么后面的数据就 会被认为是sql语句的其它组成部分,在数据库查询时当然会报错,所以写进sql语句的文本型数据一定要用addslashes()函数转定义单引号,读取数据时再用stripslashes()转回来。


注:本站部分信息可能源于互联网分享,如有侵权,请告知,我们将及时删除!

推荐文章