PSR-1: Basic Coding Standard
PSR-1 (PHP Standard Recommendation 1) — этот стандарт определяет минимальные правила для совместимости и хорошей организации кода, чтобы улучшить его читаемость и совместимость между различными библиотеками и проектами. PSR-1 является базой для других более специфичных стандартов PSR.
Основные принципы и правила PSR-1:
1. Кодировка файлов
Все исходные PHP-файлы должны быть сохранены в UTF-8 без BOM (Byte Order Mark).
Пример: Все файлы должны быть сохранены в UTF-8 (например, через настройки в редакторе кода).
2. PHP-теги
Каждый PHP-скрипт должен начинаться с открывающего тега <?php
и заканчиваться без закрывающего тега ?>
, если файл не содержит HTML-кода. Это помогает избежать неожиданных пробелов и символов, которые могут быть выведены на экран.
Пример:
<?php
// Это правильный PHP файл
Неправильный пример:
<?php
// Пробел или символ после закрывающего тега
?>
3. Имена классов
Имена классов должны быть записаны в PascalCase (каждое слово начинается с заглавной буквы, например, MyClass
).
Пример:
class MyClass {
// Код класса
}
4. Имена методов
Имена методов должны быть записаны в camelCase (первое слово с маленькой буквы, последующие с заглавной).
Пример:
class MyClass {
public function myMethod() {
// Код метода
}
}
5. Имена констант
Имена констант должны быть записаны в UPPER_SNAKE_CASE (все буквы заглавные, слова разделены подчеркиваниями).
Пример:
class MyClass {
const MY_CONSTANT = 'value';
}
6. Файловая структура
Для классов рекомендуется использовать автозагрузку с помощью PSR-4. Таким образом, файлы должны быть организованы таким образом, чтобы соответствовать структуре классов. Например, класс MyClass
должен находиться в файле src/MyClass.php
.
7. Использование пробела
В коде должен быть один пробел после ключевых слов (например, if
, foreach
, while
) перед открывающей скобкой. Это повышает читаемость кода.
Пример:
if ($condition) {
// действие
}
8. Строки с одной кавычкой
Для строк, содержащих только простые текстовые значения, рекомендуется использовать одиночные кавычки, а не двойные.
Пример:
$str = 'Hello, World!';
Неправильный пример:
$str = "Hello, World!";
9. Комментарии
Комментарии в коде должны быть написаны в формате, понятном разработчикам. PSR-1 рекомендует использовать стандартные многострочные и однострочные комментарии.
Пример:
// Это однострочный комментарий
/* Это
многострочный
комментарий */
Пример кода, который соответствует PSR-1:
<?php
// Класс в стиле PascalCase
class MyExampleClass {
// Константа в стиле UPPER_SNAKE_CASE
const EXAMPLE_CONSTANT = 'constant_value';
// Метод в стиле camelCase
public function myExampleMethod() {
// Тело метода
}
}