php单引号与双引号
‘壹’ php 单引号和双引号的区别
两者的区喊侍悄别如下:
1、变量上的区郑渣别
双引号能解释变量,谈前单引号不能解释变量。 单引号插入双引号中,如果单引号中包含变量,则变量解释。
2、效率上的区别
单引号比双问号更有效,因为首先需要遍历双引号以确定其中是否有变量,然后执行操作,并且不需要判断单引号。
3、字符上的区别
双引号解释转义符,单引号不解释转义符,而是解释'和。
‘贰’ php 双引号和 单引号 有什么异同
在PHP中,字符串的定义可以使用单引号,也可以使用双引号。但是必须使用同一种单或双引号来定义字符串,如:‘Hello"和“Hello'为非法的字符串定义。
定义字符串时,只有一种引号被视为定义符,即单引号或双引号。于是,如果一个字符串由双引号开始,那么只有双引号被分析器解析。这样,就可以在双引号串中包含任何其他字符,甚至单引号。下面的引号串都是合法的:
$s
=
"I
am
a
'single
quote
string'
inside
a
double
quote
string";
$s
=
'I
am
a
"double
quote
string"
inside
a
single
quote
string';
$s
=
"I
am
a
'single
quote
string'
inside
a
double
quote
string";
$s
=
'I
am
a
"double
quote
string"
inside
a
single
quote
string';
PHP允许我们在双引号串中直接包含字串变量,单引号串和双引号串在PHP中的处理是不相同的。双引号串中的内容可以被解释而且替换,而单引号串中的内容总被认为是普通字符。例如如下代码:
$foo
=
2;
echo
"foo
is
$foo";
//
打印结果:
foo
is
2
echo
'foo
is
$foo';
//
打印结果:
foo
is
$foo
echo
"foo
is
$foo\n";
//
打印结果:
foo
is
2
(同时换行)
echo
'foo
is
$foo\n';
//
打印结果:
foo
is
$foo\n
$foo
=
2;
echo
"foo
is
$foo";
//
打印结果:
foo
is
2
echo
'foo
is
$foo';
//
打印结果:
foo
is
$foo
echo
"foo
is
$foo\n";
//
打印结果:
foo
is
2
(同时换行)
echo
'foo
is
$foo\n';
//
打印结果:
foo
is
$foo\n
在单引号串中甚至反斜杠也失去了他的扩展含义(除了插入反斜杠\\和插入单引号\')。所以,当想在字串中进行变量代换和包
含\n(换行符)等转义序列时,应该使用双引号。单引号串可以用在其他任何地方,脚本中使用单引号串处理速度会更快些,因为PHP语法分析器对单引号串
的处理方式比较单纯,而双引号的处理由于串内部也需要解析,因此更复杂些,所以处理速度略慢。
‘叁’ 浅谈PHP中单引号和双引号到底有啥区别呢
在PHP中,字符串的定义可以使用英文单引号'
',也可以使用英文双引号"
"。
但是必须使用同一种单或双引号来定义字符串,如:'Hello
World"和"Hello
World'为非法的字符串定义。
单引号和双引号到底有啥区别呢?
PHP允许我们在双引号串中直接包含字串变量。
而单引号串中的内容总被认为是普通字符,因此单引号中的内容不会被转义效率更高。
比如:
复制代码
代码如下:
$str='hello';
echo
"str
is
$str";
//运行结果:
str
is
hello
echo
'str
is
$str';
//运行结果:
str
is
$str
php中,双引号中的变量($var)和特殊字符(\r\n之类)会被转义,单引号中的内容不会被转义(所以效率更高)。
使用上的话,
我以前很喜欢在sql字符串里这样写$sql
=
"SELECT
*
FROM
table
WHERE
id
=
$id",这样里面的$id可以被转义,单引号就不行。
在JavaScript中
单引号
和双引号没有区别,只要成对使用就行。
我在JavaScript
中使用单引号大多是因为
Javascript
和
HTML
打交道比较多,输出
HTML
片段的时候不需要转义
HTML
中属性的引号。
总之,看实际情况来用啦,怎么方便怎么使用。
以上就是本文关于php中单双引号的区别分析了,希望大家能够喜欢
‘肆’ php中单引号和双引号怎么都搞不懂
单引号括起来就是告诉PHP处理时把括起来的东西全部当成字符串,PHP处理时不会对''里面的东西进行处理。双引号则是php会对”“里的东西进行相关的转义。
单引号是直接输出字符串
双引号要先进行转义在输出的
比如 如果$a=12345
echo 'jadsjsgdj$a'; 输出jadsjsgdj$a
echo "jadsjsgdj$a"; 输出jadsjsgdj12345
‘伍’ php 的单引号和双引号的用法
$test1 = "PHP";
1:echo "互联网最流行的技术$test1" //输出 互联网最流行的技术PHP
2:echo '互联网最流行的技术$test1' //输出 互联网最流行的技术$test1
上面两个例子说明,双引号里面的变量,会当作变量解释,单引号里面的变量会直接当作字符串来处理,就是说,在单引号里面的变量会失去其变量的性质,变成一个字符串。
如果想用第一句的方法输入第二句的结果,加转义符号啊
3:echo "互联网最流行的技术\$test1" //输出 互联网最流行的技术$test1
4:echo "互联网最流行的技术$test1技术" //本来是想输出 互联网最流行的技术PHP技术,但是你发现,告诉你,找不到变量$test1技术,因为没有加空格,所以它把后面所有的都当成一个变量了。
所以你会发现,很多优秀的作品,都推荐使用''单引号来写变量,除非里面是SQL语句。就是防止这类的错误。至于为什么SQL除外,你可以自己想一下!
‘陆’ php 单引号和双引号的区别
1、变量。双引号解释变量,单引号不解释变量;双引号里插入单引号,其中单引号里如果有变量的话,变量解释;
2、字符。双引号解释转义字符,单引号不解释转义字符,但是解释'和;
3、效率。能使单引号字符尽量使用单引号,单引号的效率比双引号要高(因为双引号要先遍历一遍,判断里面有没有变量,然后再进行操作,而单引号则不需要判断)。
(6)php单引号与双引号扩展阅读:
一般情况下两者是通用的。但双引号内部变量会解析,而单引号则不解析。
PHP允许我们在双引号串中直接包含字串变量。
而单引号串中的内容总被认为是普通字符,因此单引号中的内容不会被转义效率更高。
比如:
$str = 'hello world';
echo "str is $str"; //运行结果: str is hello world
echo 'str is $str'; //运行结果: str is $str