====== Стандарты кодирования для GetSimple ======
* Вновь написанный код должен соответствовать стандартам PHP 5.2+
* Все PHP файлы начинаются со стандартных открывающих тэгов и заканчиваются стандартными закрывающими тэгами, после закрывающих тэгов недопустимы любые символы, включая пробел (короткая запись PHP = также не используется).
* Все файлы, классы, методы класса, переменные класса, функции и константы документируются по стандартам [[http://manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutorial_phpDocumentor.howto.pkg.html#basics.docblock|DocBlocks]]
* Исходите из предположения, что все данные, получаемые от пользователя потенциально вредоносны. Переменные $_GET, $_POST и $_COOKIE, а также данные форм должны проходить процедуры фильтрации и нормализации.
* Минимизируйте использование двойных кавычек, так как они заставляют парсер PHP проводить проверку строк в двойных кавычках на наличие переменных для обработки даже при их отсутствии.
Лучшей практикой является использование одинарных кавычек и конкатенации, например: $string = 'Some plain text and a ' .$variable;
Пример нежелательного кода с использованием двойных кавычек:$string = "Some plain text and a $variable";
* Не применяйте [[http://en.wikipedia.org/wiki/Ternary_operation#Perl.2C_PHP|тернарные операторы]]. Вместо кода: $dynamic = ($language == 'php' ? true : false);
используйте следующую запись: if($language == 'php') {
$dynamic = true;
} else {
$dynamic = false;
}
* Не применяйте короткие тэги PHP ''= ?>'', всегда используйте полный синтаксис: ''''.
====== Ссылки ======
На главную [[ru:|Содержание]]
===== Страницы этой секции =====
=== Разработка ядра ===
*[[ru:how_to:svn|Доступ к SVN GetSimple]]
*[[ru:releases|Нумерация релизов GetSimple]]