【问题标题】:When should you use single or double quotes in PHP? [duplicate]什么时候应该在 PHP 中使用单引号或双引号? [复制]
【发布时间】:2014-10-07 23:25:40
【问题描述】:

请原谅这个问题的直率,但我确实注意到,您可以使用单引号或双引号作为开头,并在整个套件中进行操作。

有人曾经告诉我在回显、输出或返回时使用双引号,而在其他所有内容中使用单引号。

但我想知道,是否有充分的理由何时只使用单引号,反之亦然,而不是另一个?

【问题讨论】:

  • 主要区别在于变量将被解释为双引号字符串而不是单引号。 IE。 "$hello" 给出变量 $hello 的值,而 '$hello' 将给出字符串 $hello
  • 问题结束时我正在写一个答案。双引号中的任何内容都由 PHP 解析。单引号内的任何内容都不是。在编写 SQL 时,使用双引号会很有帮助,因为您可以在其中使用单引号。如果您需要换行符或制表符,请将它们放在双引号中,如下所示:"\n""\t"。当我说“解析”时,试试这个:echo "this is a $thing that I like."; 其中$thing 有一个值。该值将被回显。我会详细说明的。
  • 我很感激之前有人问过它,但没有必要否决它。当我看到其他只是陈述同一件事的问题时,这些问题已被赞成。这有点不公平。我觉得除了其他问题之外,我的问题实际上提供了一些有用的东西。

标签: php quotes


【解决方案1】:

唯一的区别是双引号字符串解释嵌入变量和一些转义序列,而单引号字符串不。例如:

'This is $a \n string'

这实际上是字符串“这是 $a \n 字符串”。

"This is $a \n string"

这是一个包含变量$a 的值和换行符的字符串。

酌情使用两者。如果你对转义序列和变量都不感兴趣,我会默认使用单引号字符串;有一个例外:如果您需要在字符串中使用单引号,那么双引号是“更干净”的。比较:

'I don\'t care.'
"I don't care."

【讨论】:

  • 我同意“我默认使用单引号字符串”即使我需要换行,我也会以单引号开头并在其末尾加上."\n"。我也更喜欢串联而不是字符串中的大量转义。
  • 使用双引号对单引号的性能提升可以忽略不计,但是如果其中有很多变量并且特定于您正在运行的 PHP 版本,这确实会降低。我也倾向于使用单打,因为我经常会呼应 HTML,其中参数应该用双打括起来。然而,一致性是关键。
  • @PeteAUK 性能差异是如此微小以至于无关紧要。我首先会选择可读源代码。
  • @deceze 我不会说无关紧要,因为它在不同版本的 PHP 中略有波动(这意味着它可以再次) - 诚然不足以产生影响:D 易读性和一致性应该是名称十分之九的游戏。
  • @PeteAUK Sooo... 你是说它 无关紧要? :D 当基准测试证明单引号与双引号是我的应用程序性能的主要瓶颈时,我会开始担心它。这可能永远不会发生...... ;)
猜你喜欢
  • 2019-07-28
  • 1970-01-01
  • 2016-11-30
  • 1970-01-01
  • 2011-06-19
  • 2019-09-15
  • 2012-09-02
  • 2012-10-16
  • 2014-05-13
相关资源
最近更新 更多