【问题标题】:PHP string concatenation using ","?PHP字符串连接使用“,”?
【发布时间】:2010-12-02 05:58:38
【问题描述】:

我刚刚发现了一些东西。

echo $var1 , " and " , $var2;

等同于:

echo $var1 . " and " . $var2;

php 中实际的字符串连接运算符是什么?我应该使用. 还是,

【问题讨论】:

  • 现在我们随机选择谁的答案是正确的!
  • 天啊..你对吗?这个问题太愚蠢了(呃,我是愚蠢的提问者)..我会选择投票最高的那个。谢谢大家(我真的很难选择最佳答案,我只是刷新了这个页面,我得到了很多答案z_z)!!

标签: php string concatenation string-concatenation


【解决方案1】:

. 运算符是连接运算符。您的第一个示例仅有效,因为 echo 'function' (从技术上讲,它是一种语言结构,但不允许分裂头发)接受多个参数,并将打印每个参数。

因此,您的第一个示例是使用多个参数调用 echo,并且它们都被打印出来,而第二个示例是连接所有字符串并打印一个大字符串。

【讨论】:

  • 还有一个注意事项。 echo 不接受多个参数,如果您使用括号调用它。这不起作用:echo($a, $b);
  • 我在某处读到 echo "a", "b";比 echo "a"."b" 快;
  • 我怀疑它明显更快,除了可能非常大的“a”和“b”。不过我确实相信。
【解决方案2】:

实际的串联是.(句点)。在那里使用,(逗号),您将多个参数传递给echo 函数。 (实际上,echo 不是函数,而是 PHP 语言结构,这意味着您可以省略实际函数调用所需的参数列表周围的括号。)

【讨论】:

    【解决方案3】:

    在第一种情况下,您只需回显 3 个不同的字符串。

    在第二种情况下,您连接 3 个字符串,然后回显输出。

    所以答案是,为了连接字符串,您应该使用点 (.)

    【讨论】:

      【解决方案4】:

      “。”。另一个只是独立写入几个值,实际上没有连接字符串。
      另请参阅PHP echo 参考,“,”变体仅适用于接受多个参数的方法。

      【讨论】:

        【解决方案5】:

        “。”连接,“,”只能用于echo,这是一种语言结构(某种函数)

        另见:Difference between period and comma?

        【讨论】:

          【解决方案6】:

          使用逗号实际上并不连接字符串。

          其他问题请见this answer

          【讨论】:

            【解决方案7】:

            “。”是正确的连接运算符。 "echo" 也接受 ",",将其视为您将一系列参数传递给 "echo" 方法,然后回显每个参数。它并没有真正连接字符串。

            【讨论】:

              【解决方案8】:

              不,因为echo 可以接受不止一个参数,它会打印每个参数

              【讨论】:

              • 我怀疑 echo 做了串联,它只是打印每个参数。
              • 是的,但恰好有相同的效果。
              猜你喜欢
              • 2010-09-15
              • 1970-01-01
              • 2014-04-29
              • 1970-01-01
              • 2010-09-12
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多