php定义字符串的方法有哪些

php定义字符串的方法有哪些

内容导读

收集整理的这篇技术教程文章主要介绍了php定义字符串的方法有哪些,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2574字,纯文字阅读大概需要4分钟

内容图文

在PHP中这门语言中,因为是弱类型语言,因此使用变量时不需提前定义即可使用。我们在使用php进行开发的时候,大多数使用双引号、单引号进行定义字符串。既然有这两种方式,那么他们之间肯定是有区别的。并且,除了单双引号定义字符串这两种方式外,php还增加了heredoc和nowdoc这两种语法糖进行补充。

一、单引号

在单引号中,任何特殊字符都会按原样输出【除\、‘将会被转义输出】

例如:

<?php

$var = 'this is a var!';

echo '666$var666、'、"、\、n、r、t、$';

从上面例子中我们可以明显看到,变量是没有被解析的;同时带反斜杠的转义字符仅仅只有单引号、反斜杠被转义输出了,其他的是直接输出。

相关推荐:《PHP入门教程》

二、双引号

在双引号中,遇到$将会解析该变量;

双引号中会转义反斜杠的转义字符;

<?php

$var = 'this is a var!';

echo "666$var 666、'、"、\、n、r、t、$";

由上面例子我们可以知道,双引号中的变量被解析了,替换成字符串;其他带反斜杠的转义字符都进行了相应的转义。

单双引号之间的区别:

(1)双引号会替换变量的值,而单引号会把它当做字符串输出。

(2)对于转义的支持。

(3)性能速度问题,由于双引号中的字符串需要检测是否含有$符号修饰的变量,因此从理论上讲,单引号是比较快的。

三、heredoc

heredoc可以理解为不使用双引号来定义字符串,但效果与使用双引号一致。【此时双引号相当于普通字符】

语法要求:

1、开始标记和结束标记使用相同的字符串,通常以大写字母来写。

2、开始标记后不能出现空格或多余的字符。

3、结束标记必须顶头写,不能有缩进和空格,且在结束标记末尾要有分号 。

4、位于开始标记和结束标记之间的变量可以被正常解析,但是函数则不可以。

例如:

<?php

$var = 'this is suifeng';

echo <<<"EOT"

<!DOCTYPE html>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf8" />

<title>"随风"</title>

</head>

<body>

66666666666<br/>

"666666666"<br/>

$var<br/>

$var<br/>

n666<br>

</body>

</html>

EOT;

从打印的结果我们可以看出:此时双引号仅仅只是一个普通字符;其他的效果和双引号的字符串效果一致。

四、nowdoc

同理,nowdoc是不使用单引号来定义,但效果相当于使用单引号来定义的字符串。【此时单引号相当于普通字符】

语法同heredoc

例如:

<?php

$var = 'this is suifeng';

echo <<<'EOT'

<!DOCTYPE html>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf8" />

<title>"随风"</title>

</head>

<body>

'02020'<br/>

'<br/>

66666666666<br/>

"666666666"<br/>

$var<br/>

$var<br/>

n666<br>

</body>

</html>

EOT;

注意:

定界符之后必须不能有任何字符【特别是空格字符有时会没注意到】,否则将会出错。

如上例中的EOT后面有空格就会报这个错误:【 Parse error : syntax error, unexpected '<<' (T_SL)】

以上就是php定义字符串的方法有哪些的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的php定义字符串的方法有哪些全部内容,希望文章能够帮你解决php定义字符串的方法有哪些所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com