TGViewer
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter @phpproglib · 10.5K subscribers
Post #5210 2.71K
PSR-1: Основные стандарты кодинга в PHP

Почему одни проекты на PHP легко поддерживать, а другие превращаются в путаницу? Во многом это зависит от соблюдения единых стандартов кодирования. PSR-1 — базовый стандарт, который помогает создавать понятный и структурированный код. Рассмотрим основные принципы и способы их применения.

Правила PSR-1
1. Файлы и пространства имён

🔸Использовать только теги «<?php» и «<?=».
🔸Код должен быть записан в UTF-8 без BOM.
🔸Файлы должны либо объявлять символы (классы, функции, константы), либо вызывать побочные эффекты (например, вывод на экран, изменение настроек). Делать и то, и другое в одном файле не рекомендуется.

2. Имена пространств и классов
Названия классов должны быть в стиле StudlyCaps (каждое слово с заглавной буквы, без разделителей).
Константы классов записываются прописными буквами с подчёркиваниями, например MAX_SIZE.

3. Методы классов
Имена методов записываются в стиле camelCase (первое слово с маленькой буквы, последующие — с заглавной).
Пример реализации
На картинке представлен корректный пример кода, соответствующий PSR-1:
Что здесь показано:

🔹Пространство имён оформлено в стиле StudlyCaps.
🔹Имя класса соответствует стандарту StudlyCaps.
🔹Константы записаны заглавными буквами с подчёркиваниями.
🔹Имя метода оформлено в стиле camelCase.

Интеграция PSR-1 с современными инструментами
Для проверки и автоматизации соблюдения стандартов используются такие инструменты:

PHP_CodeSniffer: проверяет код на соответствие PSR-1. Запуск проверки через composer check-style.

Автоматическое исправление стиля: возможно с помощью composer fix-style.

PHPUnit: тестирование кода для обеспечения качества реализации.

Автозагрузка по PSR-4: упрощает управление файлами и пространствами имён.
  • 👏 11
  • 🥱 5
  • ❤ 1
  • 👍 1
  • 🔥 1
More from @phpproglib
  1. Oct 2, 2026🎹 Что делать после ChatGPT? Следующий шаг — AI-агенты. Они не просто отвечают на запросы,…
  2. Sep 30, 2026🔥 Последний день для разработчиков AI уже пишет код. Теперь важнее научиться встраивать е…
  3. Sep 30, 2026🐸 Библиотека пхпшника
  4. Sep 29, 2026💡 Laravel-фича, которая спасает тесты от случайных запросов Http::preventStrayRequests()…
  5. Sep 28, 2026🔐 ramsey/uuid — UUID без самописного кода Библиотека помогает генерировать, парсить и вал…
  6. Sep 28, 2026🤔 Что выведет код? ❤️ — 1 🔥 — 2 👍 — 12 👾 — Fatal error 👇 Правильный ответ (нажми, что…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →