【问题标题】:Is it possible to concatenate heredoc string in PHP..?是否可以在 PHP.. 中连接 heredoc 字符串?
【发布时间】:2011-04-29 08:15:33
【问题描述】:

使用普通的 PHP 字符串,您可以这样做:

$str = "Hello ";
$str .= "world";
$str .= "bla bla bla";
$str .= "bla bla bla...";

但是你能对 heredoc 字符串做同样的事情吗?

$str = <<<EOD
Hello 
world
EOD;

$str .= <<<EOD
bla bla bla";
bla bla bla...";
EOD;

【问题讨论】:

  • -1 真的,你可以自己测试一下。如果您没有本地 PHP 安装 google for execute PHP code online...
  • 你真的应该能够弄清楚这是否是你自己运行的,而不是问 SO。该代码的工作方式与您发布的完全相同。实验是理解的关键。
  • 同意,我本可以对此进行测试...但我无法通过快速的 Google 搜索找到此信息,而且我可能不是第一个和/或最后一个拥有这个确切信息的人题。现在,由于下面的答案,这些信息将很容易获得。
  • 我支持提问者。这是一个简单的是/否问题,对 Google 来说比试验要快,其他人可以从中学习。我们的学习方式并不相同,所以人们不应该期望对他们有用的东西对其他人也有用。
  • 好,小问题。为我节省了 1/2 分钟的测试时间。

标签: php string string-concatenation heredoc


【解决方案1】:

当然。为什么不能呢?

Heredocs 计算为一个字符串,所以这是完全可以接受的。

【讨论】:

    【解决方案2】:

    是的,你可以。 Heredoc 是表达式的一部分,因此您甚至可以这样做:

    $s = 'abc' . <<<EOD
    def
    EOD
    . 'ghi';
    

    但要小心数据结束标记:它应该是一行中唯一的东西。

    【讨论】:

      【解决方案3】:

      是的,你可以。

      heredoc 相当于没有双引号的双引号字符串。

      【讨论】:

      • 哎呀,所以 PHP 中的 heredoc 不是字符串文字。通常是其他语言。
      • @Henk Poley PHP 也有这些,它叫做nowdoc。
      猜你喜欢
      • 2020-02-24
      • 1970-01-01
      • 2011-09-20
      • 1970-01-01
      • 2014-07-19
      • 2014-10-04
      • 2011-11-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多