我能在PHP的EOD中使用条件逻辑吗?

3

能否在EOD字符串中放置条件逻辑?

$str = <<<EOD

<table>
    <tr>
        <td>
            if ( !empty($var1) ) {
                {$var1}
            } else {
                {$var2}
            }
        </td>
    </tr>
</table>

这对我没有用,而且看起来好像不会有用,但我想试一试。

另外,是EOD还是EOT?两者都似乎可以使用。


这实际上是 HEREDOC。不,你不能在这里使用条件逻辑。 - raina77ow
1个回答

3

不行。您不能在heredoc中使用条件语句。

此外,是EOD还是EOT

只要开头和结尾的字符串匹配,您可以使用任何内容:

 $x = <<<THOMAS
 Pick a string, any string
 THOMAS;

这篇文档包含了多个演示案例

对于如何实现您提供的案例,这是我首选的方法:

$td = !empty($var1) ? $var1 : $var2;
$str = <<<EOD
<table>
    <tr>
        <td>
            {$td}
        </td>
    </tr>
</table>
EOD;

哈!我喜欢这个。我想我会使用它 :) 谢谢 - 1252748
所以最好的方法就是关闭字符串并执行条件判断,如果为真,则在变量不为空的情况下连接<<<THOMAS,你认为呢? - 1252748

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接