MODX PHP Стандарты кодирования
Последнее обновление Apr 15th, 2021 | История страницы | Улучшить эту страницу | Сообщить о проблеме
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$280 per month—let's make that $500!
Learn moreЭти стандарты кодирования в первую очередь относятся к коду PHP.
Общие требования¶
- Открывающие фигурные скобки не разрывают строку. Они пишутся после одного пробела после скобки, согласно традициям Unix.
- Не пишите никакой реальной бизнес-логики в конструкторах класса. Создайте специальные методы для этого.
- 
null,trueи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, если иное не оговаривается в отдельных случаях, должны начинаться с префиксаmod: т.е.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'] = 'Тест';
Константы¶
- Константы должны быть в ВЕРХНЕМ РЕГИСТРЕ.
- Используйте только в случае крайней необходимости.
Структура файла¶
- Всегда называйте файлы PHP классов в формате name.class.php.
Префиксы¶
- Строки словарей для компонентов должны начинаться с префикса:
$_lang['mycomponent.welcome_message'] = 'Привет!';
- Всегда добавляйте префикс к имени класса: например finBank,finTransactionи тд.
- Всегда добавляйте префикс к имени Чанка например finStatement,finDeposit
Support the team building MODX with a monthly donation.
The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.
Backers
Budget
$280 per month—let's make that $500!
Learn more
















