Теперь, когда мы уже научились писать простые программы, можно немного поговорить о том, как их писать.
Код нужно оформлять определенным образом, чтобы он был достаточно понятным и простым в поддержке. Специальные наборы правил — стандарты — описывают различные аспекты написания кода. Конкретно в PHP самыми распространенными являются стандарты PSR (PHP Standards Recommendations или стандартные рекомендации PHP) от PHP-FIG. Рекомендация представляет собой набор правил, призванных облегчить определенную сторону разработки (или решить какую-то определенную проблему). На текущий момент существует несколько утвержденных рекомендаций, каждая из них обозначена цифрой: PSR-1, PSR-2, PSR-3 и другие. Со всеми этими рекомендациями вы будете постепенно знакомиться во время обучения и работы. Сейчас же остановимся на двух основных:
В любом языке программирования существуют специальные инструменты, так называемые линтеры, которые проверяют код на соответствие стандартам. Повсеместно используемым линтером в PHP является PHP_CodeSniffer.
Допустим, у нас есть файл с таким PHP-кодом:
<?php
// На следующей строке отступ равен одному табу
print_r (((8 / 2) + 5) - (-3 / 2));
?>
При проверке файла линтер найдет следующие ошибки:
Spaces must be used to indent lines; tabs are not allowed
— PSR-12 рекомендует делать отступ размером в четыре пробела, а в примере выше использована табуляцияA closing tag is not permitted at the end of a PHP file
— стандарт содержит требование опускать завершающий тег ?>
Space before opening parenthesis of function call prohibited
— при вызове функции между именем функции и круглыми скобками не должно быть пробельных символов, а в проверяемом коде после имени print_r
стоит один пробелИсправим код, убрав закрывающий тег, отступы и пробел после имени функции:
<?php
print_r(((8 / 2) + 5) - (-3 / 2)); // => 10.5
Этот вариант уже не нарушает правил, и линтер будет «молчать».
Не «пугайтесь» обилию рекомендаций и правил. Большинство правил просты и понятны. Скорее всего, вы и так будете интуитивно придерживаться их в коде. С остальными вам помогут справиться время, опыт и линтер.
Вам ответят команда поддержки Хекслета или другие студенты.
Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно
Наши выпускники работают в компаниях:
С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.
Зарегистрируйтесь или войдите в свой аккаунт