尽量使用单引号,并且我注意到我不能在单引号中使用\ n。我知道我可以按回车键直接输入一个换行符,但是这会使我的代码缩进。在PHP中使用单引号打印换行符
是否有一些ASCII字符或我可以键入的内容,当我使用单引号时会产生换行符?
尽量使用单引号,并且我注意到我不能在单引号中使用\ n。我知道我可以按回车键直接输入一个换行符,但是这会使我的代码缩进。在PHP中使用单引号打印换行符
是否有一些ASCII字符或我可以键入的内容,当我使用单引号时会产生换行符?
你可能要考虑使用< < <
例如
<<<VARIABLE
this is some
random text
that I'm typing
here and I will end it with the
same word I started it with
VARIABLE
更多信息在:http://php.net/manual/en/language.types.string.php
顺便说一句 - 一些编码环境不知道如何处理上述语法。
啊,是的......但我仍然讨厌最后一个VARIABLE会破坏代码中的所有缩进这一事实......我使用HEREDOC语法遇到了很多(愚蠢的)错误 – Matt 2010-03-28 07:47:13
不,根据documentation,PHP在单引号中不识别特殊符号。 和没有单一理由尽量使用单引号
使用单引号会有轻微的性能提升。另外,明确定义何时需要替换变量似乎是一种很好的做法。 – 2010-03-28 05:42:20
@杰克逊有**没有**表现增加。以任何方式。忘记这些幼稚的谣言。不,不要谈论变量,而是谈论特殊的序列。如果你想要任何序列,一个变量或一个换行符被扩展 - 使用双引号,**就其目的而言**。而OP拒绝将其用于其目的是无稽之谈。 – 2010-03-28 06:03:19
您可以在单引号中使用的唯一转义序列是单引号本身。
$foo = 'That\'s great';
,你可以插入新行与单引号创建的字符串,唯一的办法是插入一个文本换行
$bar = 'That\'s
cheating';
仅供参考,可以让新行成字符串没有双引号:
printf('Please%1$sgive%1$sme%1$snewlines%1$s', PHP_EOL);
这可能是有用的如果你对双引号的不理智恐惧知道没有界限。虽然我担心这种治疗可能比疾病更糟糕。
这不是一个恐惧..当你使用单引号时,你只会获得更好的性能,所以我尝试更频繁地使用它们,然后不..但是,这对于这个问题并不是一个很好的解决方案,它比它更麻烦价值。谢谢。 – Matt 2010-03-31 13:03:35
我还没有测试过,但我敢打赌,使用双引号比使用'printf'或字符串连接的速度更快。 – 2013-05-08 06:10:21
这并不总是非理性的,双引号可能会有问题,取决于你想要做什么。 'echo'例如,我想要这个吐出php代码。\ necho $ this-> stuff;';' – 2016-05-12 16:02:13
echo 'hollow world' . PHP_EOL;
使用常量PHP_EOL,它也是操作系统无关的。
PHP_EOL不起作用。 PHP 5.5.xx – 2014-06-19 22:56:12
在PHP 5.6.9中工作 – 2015-07-17 04:56:11
您通常不应该使用PHP_EOL,因为这会使您的代码依赖于它所运行的系统。例如。你的Linux服务器正在与另一台服务器通信,然后你的服务器被Windows取代......不好。 – Andreas 2016-05-09 18:12:46
有在PHP
使用单VS双引号例如差: 1. echo '$var\n';
2. echo "$var\n";
$var\n
$var
的位置,并返回该位置的值,并且还必须将\ n分析为新行字符并打印出结果我们处在百万分之一秒的范围内,但是在性能上存在差异。我建议您尽可能使用单引号,即使您知道您无法察觉到性能提升。但是在性能方面,我是一个偏执狂的开发者。
如果有人对浏览器和终端(cli,命令行)都适用的解决方案感兴趣:http://stackoverflow.com/a/9665253/1923625 – 2017-03-20 18:03:11