Я работал с PHP
кодом, который генерирует HTML без каких-либо шаблонов, и это довольно спагетти и трудно читать с тем, как они структурировали его. Одним из способов радикального улучшения после потока, который я заметил, является использование :
endif
вместо { }
блоков в некоторых случаях для повышения удобочитаемости. (См. Http://php.net/manual/en/control-structures.alternative-syntax.php )
Ура!
Является ли это переносной?
да
Это стандарт?
да
Является ли это медленнее каким-либо значительным образом (я понимаю, что это требует больше символов)
Я не знаю.
Но imho повышает его удобочитаемость и удобство обслуживания, если вы используете его в сочетании с HTML.
Пример:
<?php foreach($array as $value): ?> <div> <?php if($value == "foo"): ?> <p><?php echo $value; ?></p> <?php endif; ?> </div> <?php endforeach; ?>
против
<?php foreach($array as $value) { ?> <div> <?php if($value == "foo") { ?> <p><?php echo $value; ?></p> <?php } ?> </div> <?php } ?>
Это всего лишь небольшой пример, но я думаю, что endif
и endforeach
гораздо проще определить как <?php } ?>
. Так что да, определенно используйте его с HTML!
Я не использую его нигде, потому что в «нормальном» коде мне становится труднее читать.
Лично я ненавижу их, но они являются частью языка. Они не устарели, и я сомневаюсь, что их скоро удалит.
Вещь, о которой вы должны быть осторожны, заключается в том, что вы не можете смешивать два синтаксиса в одном контрольном блоке (как говорится на странице руководства).
Я не считаю их более читаемыми. Идентификация дает достаточно информации. Если у вас есть блоки достаточно долго, что вы видите себя с помощью этих структур управления или } //end of while
, вы должны реорганизовать свой код.
PHP Альтернативные структуры управления, любые недостатки?
Да, вы не можете использовать %
in vim для отскока между началом и концом блока. Просто говорю.
ответить прямо: Да, это стандартная и портативная, и она не медленнее. Это простая альтернатива стандартному синтаксису фигурных скобок. Независимо от того, решите ли вы его использовать, вы выбираете стиль.
Лично я, будучи обученным и использующим языки c-стиля, всю свою карьеру программирования (до сих пор), предпочитаю фигурные скобки с простым комментарием после окончания фигурной скобки, которая сообщает вам, что она заканчивается.
Единственный недостаток, который я вижу, заключается в том, что в редакторе, таком как возвышенный текст, есть такие опции, как «Переход к согласующемуся кронштейну» и «Разверните выбор в скобки», которые не будут работать с альтернативным синтаксисом