在回显之前将变量放在双引号之间?

时间:2013-06-13 18:21:44

标签: php

偶尔我会看到像

这样的代码
$str = strip_tags($str)
echo "$str";

这有什么用呢?为什么要将变量放在引号中而不是直接回显?

2 个答案:

答案 0 :(得分:3)

来自manual

  

双引号字符串最重要的特征是事实   变量名将被扩展。

在这种情况下,它根本不做任何事情。

双引号之间的字符串允许在内部解析变量,因此如果您有例如"sometext $variable sometext",则输出将是变量的内容,其前后为字符串sometext

如果您只有单引号,则会打印美元符号和变量名称。

所以它是连接字符串和变量的简短版本,但是在这种情况下,字符串around是空的,所以它在你要求的意义上没有效果。

还有其他符号。这里记录了不同的行为和不同的类型:

http://php.net/manual/en/language.types.string.php

答案 1 :(得分:3)

这只是对新(PHP)程序员的一种极其普遍的误解。它恰好与不引用变量完全相同,但完全是多余的。我也很想知道为什么人们认为这是必要的;但人们可以经常看到它。