Стандарт кодирования - Coding Style или Стиль программирования - Programming style.
К стандартам кодирования можно отнести правила именования классов, количество отступов или табуляции.
Обычно каждый класс хранится в отдельно созданном для него файле, вместо того чтобы каждый файл (класс) включать в файл инициализации - применяют функцию автозагрузки. Функция автозагрузки вызывается в тех случаях, когда в сценарии делается попытка создания экземпляра класса, но сам класс к этому времени еще не был загружен. То есть это средство позволяет загружать файлы в сценарий по требованию.
Homepage: PSR-0/1/2 и RU: PSR-0/1/2
PSR (Proposing a Standards Recommendation) рекомендации к стандартам оформления кода на PHP принятые группой взаимодействия фреймворков PHP-FIG. Сводную таблицу соответствия требованиям различных PHP проектов стандарту PSR можно посмотреть по ссылке PHP Coding Style Notes.
Стандарт PSR состоит из трех разделов:
\namespace\package_name\MyClass_Users => /path/to/project/lib/vendor/namespace/package_name/MyClass/Users.php
if ($a === $b) { return false; }
Пакет CodeSniffer позволяет определить отвечает ли ваш код стандарту кодирования, например PEAR, Zend, PSR-1/2 и др. для файлов PHP, JavaScript и Основы работы с CSS. Он также позволяет создать свой стандарт кодирования и применять его к своим проектам. При помощи плагина phpcsmd CodeSniffer интегрируется в Apache NetBeans IDE: Настройка, оптимизация и решение проблем.
# aptitude install php-codesniffer
# pear install PHP_CodeSniffer # phpcs --version PHP_CodeSniffer version 1.4.0 (stable) by Squiz Pty Ltd. (http://www.squiz.com.au)
$ phpcs -i The installed coding standards are PHPCS, PSR1, PEAR, Zend, MySource, PSR2 and Squiz
$ phpcs --standard=PEAR --report=summary /tmp/viewfiles.php PHP CODE SNIFFER REPORT SUMMARY -------------------------------------------------------------------------------- FILE ERRORS WARNINGS -------------------------------------------------------------------------------- /tmp/viewfiles.php 25 15 -------------------------------------------------------------------------------- A TOTAL OF 25 ERROR(S) AND 15 WARNING(S) WERE FOUND IN 1 FILE(S) --------------------------------------------------------------------------------