Jump to main content Jump to doc navigation

Общие требования

  • Открывающие фигурные скобки не разрывает строку. Они пишутся после одного проблема после скобки, согласно традициям Unix.
  • Не пишите никакой реальной бизнес-логики в конструкторах класса. Создайте специальные методы для этого.
  • null, true and false всегда должны быть в нижнем регистре.
  • Избегайте вложенных вычислений (например:$d = ($a = $b + $c) так делать плохо).
  • Никогда не используйте extract().
  • Избегайте использования глобальных переменных по возможности.
  • Документируйте ВСЁ.

Скобки

  • Не ставьте скобки сразу после оператора. Разделяйте пробелами.
  • Ставьте скобки сразу после имени функции.
  • Не используйте скобки в выражениях с return когда это необходимо. Например:
 if ($test) {
 }
 while ($test == $other) {
 }
 array_push($one,$two);
 return $test;
  • Не используйте скобки когда используете функции include, require, include_once, и require_once.

Классы

  • Все имена классов в "core", если иное не оговаривается в отдельных случаях, должны начинаться с перфикса "modx": т.е. modChunk, modTemplate и т.д.
  • Все имена методов должны быть в camelCase и начинаться со строчной буквы.
  • Все private методы и переменные должны начинаться с символа подчеркивания "_".
class modFactor {
    public $publicVar;
    private $_privateVar;
    private function _privateFunc() { }
    public function publicFunc() { }
}

Переменные

Обратите внимание, это не аргументы функции.

  • Используйте строчные буквы.
  • Разделяйте слова подчеркиванием.

Аргументы функций и свойства классов

  • Первая буква в нижнем регистре, остальные в camelCase. Пример:
class modFactor {
    public function testFunc($testVar, array &$anotherTest = array()) {
        $this->_privateVar = $testVar;
        $local_variable =& $anotherTest;
    }
}

Массивы

  • В именах полей в индексах массива используйте подчеркивание "_", а не тире "-" в качестве разделителя. Это предотвратит ошибки с magic_quotes.
  • Имена полей в индексах массива всегда в нижнем регистре. Пробелы представлены в виде подчеркиваний.
  • Имена полей в индексах массива всегда заключено в одинарные кавычки.

Пример:

$_lang['chunk_create_text'] = 'Test';

Константы

  • Константы должны быть в ВЕРХНЕМ РЕГИСТРЕ.
  • Используйте только в случае крайней необходимости.

Структура файла

  • Всегда называйте файлы PHP классов в формате name.class.php.

Префиксы

  • Строки словарей для компонентов должны начинаться с префикса:
$_lang['mycomponent.welcome_message'] = 'Welcome!';
  • Всегда добавляйте префикс к имени класса: например 'finBank', 'finTransaction' и тд.
  • Всегда добавляйте префикс к имени чанка Chunk например 'finStatement', 'finDeposit'