gpt4 book ai didi

php - 在heredoc中使用增量运算符

转载 作者:行者123 更新时间:2023-12-04 13:21:23 25 4
gpt4 key购买 nike

我想通过使用 heredoc 中的增量运算符来增加变量的值。我当前的代码如下...

$counter = 0;
for($i = 0; $i<10; $i++):
echo <<< EOT
$counter++ <br/>
EOT;
endfor;

它的输出是...
0++
0++
.
.

平均后增量运算符不起作用。

我也尝试过预增量,如下所示......
echo <<< EOT
++$counter <br/>
EOT;

它的输出是...
++0
++0
.
.

平均预增量运算符也不起作用。

我还尝试将增量操作放在花括号内,如下所示......
echo <<< EOT
{++$counter} <br/>
EOT;

但再次没有运气。输出是....
{++0} 
{++0}
.
.

我也在谷歌上搜索过它,但没有找到任何有用的东西。

我知道我是否可以在 heredoc 之前增加值(value),然后我可以在 heredoc 中正确打印它
$counter = 0;
for($i = 0; $i<10; $i++):
++$counter;
echo <<< EOT
$counter <br/>
EOT;
endfor;

它工作正常。

但是我想在 heredoc 中使用增量运算符,就像我们在单引号或双引号的情况下使用 echo 一样.

但似乎heredoc 不支持增量操作。

最佳答案

complex/curly variable syntax {$var…} 只允许变量访问表达式,但不允许 PHP 表达式本身。

  • 例如 {$var[…]}
  • {$var(…)}
  • {$var->prop…}
  • {${stat::$lookup}}
  • { 中不能有算术运算符+ }本身。但仅在 […] 之间或 (…)一起使用。

    *

    一种常见的解决方法是使用变量函数名:
    $func = "htmlspecialchars";  // or any other no-op function
    echo <<<HEREDOC
    counter = {$func($counter++)}
    HEREDOC;

    您可以轻松地在 curl var 语法中使用完整表达式。

    关于php - 在heredoc中使用增量运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52288986/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com