Стандарт PSR для разметки коротких эхо-сигналов

Стандарты кодирования 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

Мой вопрос — как насчет меток короткого эха? <?= ?>, с пробелом и без него после открывающего тега хорошо разбирается — но какой стандарт PSR соответствует?

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

1

Решение

Добавьте пространство для согласованности между короткими и длинными открытыми тегами PHP.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]