1

PSR 编码标准对它们的大部分约定都非常清楚,包括 PSR-1 中的第一个条目:

PHP 代码必须使用长<?php ?>标签或短回声<?= ?> 标签;它不得使用其他标签变体。

但是最近我们团队中尚不清楚并且受到质疑的是间距,特别是对于短回波标签。我们通常会<?php在文件顶部的自己的行上看到一个开始标记,或者如果它是一个内联语句,那么如果没有空格,它将无法解析。所以这里的规则似乎是不言自明的。

<?php
//tag followed by new line - fine
$obj = new Foo();
?>
<p>Hello <?php echo $obj->printBar(); ?> World</p>
//tag followed by space - fine
<p>Hello <?phpecho $obj->printBar(); ?> World</p>
//tag no space - Parse Error

我的问题是 short-echo tags 怎么样<?= ?>,在开始标签解析之后有和没有空格 - 但是哪个符合 PSR 标准?

<p>Hello <?= $obj->printBar(); ?> World</p>
//tag followed by space - parses okay
<p>Hello <?=$obj->printBar();?> World</p>
//tag no space - parses okay
4

1 回答 1

2

在 PHP 短标签和长标签之间添加一个空格以保持一致性。

于 2015-07-30T08:37:45.787 回答