您的位置:

php引号,php双引号

本文目录一览:

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编辑器、浏览器。

1、首先,打开php编辑器,新建php文件,例如:index.php。

2、在index.php中,输入代码:echo "他说:\"我爱你!\"";。

3、浏览器运行index.php页面,此时页面能成功通过转义字符的方式打印出了双引号。

PHP中的双引号和单引号的应用

无论是书写

JavaScript

还是

PHP,总习惯于使用单引号。但周末在家

coding

的时候碰到个问题,需要通过

PHP

过滤字符串中的换行符,按照下面的方法操作:

$out

=

str_replace(array('rn',

'r',

'n'),

'',

$out);PHP

提供三种定义字符串的方法:单引号、双引号、本地文档(英文叫做

here

document

或者

heredoc)。

单引号:

使用单引号是最高效的方法,因为

PHP

不会检查单引号字符串中的内置变量和转义序列,需要转义的字符只有反斜杠和单引号本身。

双引号:

会检查内置变量和转义序列,但不能识别转义的单引号。这也正说明了开始那段代码的错误之处,正确的做法是使用双引号来定义换行的转义序列:

$out

=

str_replace(array("rn",

"r",

"n"),

'',

$out);本地文档:

检查所有的内置变量和转义序列,双引号无需转义。例如:

echo

this

is

a

"here

document"

example.

just

for

test.

EOT;简单记录下,加深印象。