Почему использование комментариев "#" часто не рекомендуется в PHP? - PullRequest
13 голосов
/ 12 ноября 2009

Насколько я знаю, PHP распознает 3 типа комментариев:

  • /* A block comment */
  • // A single-line comment
  • # Also a single-line comment

Однако, многие стандарты кодирования, например, PEAR или Kohana , препятствуют последнему типу комментариев без объяснения причин. Вопрос в том, почему это так? Запланирован ли этот синтаксис для устаревания в ближайшее время?

Ответы [ 6 ]

10 голосов
/ 12 ноября 2009

Стиль комментариев на языке C стал отраслевым стандартом. Нет ничего плохого в том, чтобы использовать # комментарии, если только определенный стандарт кодирования для вашего проекта или рабочего места не запрещает это. Стандарты являются ключом к получению читаемого кода.

Во многих случаях // и / или /* */ считаются стандартным синтаксисом комментариев для языков программирования. Единственное исключение, которое обычно встречается, это VB, который использует '. Напротив, # часто считается стандартным синтаксисом комментариев для сценариев оболочки.

PHP изначально предназначался для выполнения обеих задач. PHP может и работает достаточно хорошо как язык сценариев оболочки и может быть вызван из командной строки. Он имеет функции для обработки чтения из стандартного ввода и записи в стандартный вывод. Вероятно, это происхождение синтаксиса # для комментариев. #, вероятно, не рекомендуется, потому что в наши дни PHP считается языком программирования, а не инструментом для сценариев оболочки. В частности, стиль определяет, что ссылки на вопросы предназначены для веб-приложений, а не для какого-либо инструмента оболочки.

1 голос
/ 12 ноября 2009

По ссылкам, которые вы разместили, это выглядит как чисто стилистический выбор. PEAR и Kohana хотели бы иметь какое-то единство, когда дело доходит до стиля, и они (возможно, произвольно) решили предпочесть комментарии в стиле C по сравнению с комментариями в стиле UNIX / Perl.

0 голосов
/ 12 ноября 2009

Форма комментария # в PHP не рекомендуется в руководствах по стилю PECL, но все еще приемлема и, вероятно, не будет устаревшей. похоже на то, что имена классов обычно не содержат чисел. это просто соглашение

0 голосов
/ 12 ноября 2009

Единственная причина, по которой я могу придумать, состоит в том, что это может повредить читаемости кода, когда два разных вида синтаксиса однострочных комментариев будут плавать вокруг. // кажется более распространенным способом, поэтому я предполагаю, что они просто пытаются ограничить себя одним, чтобы улучшить читаемость

0 голосов
/ 12 ноября 2009

Я думаю, это потому, что многие другие программные запуски используют // как однострочный комментарий (C, C ++, C #, java, ect ..), а PHP получает синтаксис от языков, подобных C

Я не верю, что # скоро станет устаревшим.

0 голосов
/ 12 ноября 2009

может быть // и / * * / также являются комментариями для многих других языков, таких как c, c ++, c #, javascript, css и многих других. так что, возможно, люди привыкли ими пользоваться. просто угадай.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...