> 백엔드 개발 > PHP 튜토리얼 > 简单概括PHP的字符串中单引号与双引号的区别,php字符串_PHP教程

简单概括PHP的字符串中单引号与双引号的区别,php字符串_PHP教程

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-07-12 08:53:44
원래의
1058명이 탐색했습니다.

简单概括PHP的字符串中单引号与双引号的区别,php字符串

今天有个朋友问起,说下区别,顺便复习下。

单引号与双引号的不同:

  • " "双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。
  • ' '单引号里面的不进行解释,直接输出。 
  • 单引号解析的时间比双引号快 。
  • 单引号支持\转义符,双引号支持的转义符更多 。

1

2

3

4

5

$hello= 3;

echo "hello is $hello"; // 打印结果:hello is 3

echo 'hello is $hello'; // 打印结果: hello is $hello

echo "hello is $hello\n"; // 打印结果: hello is 2 (同时换行)

echo 'hello is $hello\n'; // 打印结果: hello is $hello\n

로그인 후 복사

PS:
今天看到老外提到了PHP的单引号的问题,其中提到了有趣的东西,摘录如下:
其中说装了PHP扩展 Vulcan Logic Disassembler 后,可以看到PHP生成的中间码,
首先是:

1

echo "This is a string";

로그인 후 복사

会转变为:

1

ECHO    'This is a string'

로그인 후 복사

1

echo 'This is a string';

로그인 후 복사

则变成

1

ECHO    'This is a string'

로그인 후 복사

,是一样的
如果是

1

echo "This is a $variable";

로그인 후 복사

则PHP产生的OPCODE为

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

INIT STRING ~0

 

2 ADD_STRING  ~0 ~0 'This'

 

3 ADD_STRING  ~0 ~0 ' '

 

4 ADD_STRING  ~0 ~0 'is'

 

5 ADD_STRING  ~0 ~0 ' '

 

6 ADD_STRING  ~0 ~0 'a'

 

7 ADD_STRING  ~0 ~0 ' '

 

8 ADD_VAR    ~0 ~0 !0

 

9 ECHO      ~0

로그인 후 복사

1

echo "This is a " . $variable;

로그인 후 복사

则会变成

1

2

3

CONCAT    ~0 'This is a ' !0

 

2 ECHO      ~0

로그인 후 복사

可以见到,速度快很多了,用.连接的话

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1123788.htmlTechArticle简单概括PHP的字符串中单引号与双引号的区别,php字符串 今天有个朋友问起,说下区别,顺便复习下。 单引号与双引号的不同: " "双引号里...
관련 라벨:
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿