На странице собраны вопросы по PHP — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: php, database, backend.
В PHP нет полноценных generics, аналогичных тем, что есть в Java и C# В актуальных версиях PHP 8.x дженерики можно описывать с помощью аннотаций в PHPDoc Инструменты статического анализа, включая PHPStan и Psalm,…
Eloquent — это ORM Laravel, построенный на основе паттерна ActiveRecord В такой модели объединены представление данных и бизнес-логика Экземпляры моделей инкапсулируют операции с БД, включая CRUD-логику Подход…
Для чего нужен S3-подобный storage и в чём его преимущество перед сервером? Облачное объектное хранилище Масштабирование до экзабайт без остановки работы Совместимость API с AWS S3 делает интеграцию простой.…
Почему исключения сравнивают с оператором goto и чем это опасно Исключение прекращает стандартное выполнение программы и немедленно передаёт управление обработчику. В этом оно напоминает оператор goto, меняющий…
архитектура: система из независимых сервисов масштабируемость: каждый компонент можно масштабировать отдельно развертывание: автономные обновления без остановки всей системы гибкость: в одном приложении можно…
Контекст: принципы SOLID и архитектура программного обеспечения Single Responsibility Principle (SRP) означает, что у класса должна быть единственная причина для изменения, то есть только одна область ответственности…
Чем отличаются WHERE и HAVING в SQL-запросах SQL-запросы и фильтрация данных WHERE отбирает строки до агрегации применяется непосредственно к строкам таблицы HAVING используется после агрегации (GROUP BY) проверяет…
Первичный ключ и уникальный индекс: сходства, отличия и случаи применения Сходство заключается в том, что оба механизма гарантируют уникальность значений одного или нескольких столбцов Первичный ключ (PK) — это…
Очередь означает асинхронное выполнение задач В очередь отправляют долгие и ресурсоёмкие операции: рассылку писем, обработку видео, интеграции Синхронными оставляют критичные задачи, требующие немедленного ответа:…
Что помещать в кэш, а что нет? Как выполнять инвалидацию кэша Кэшировать следует данные, которые часто читают и редко изменяют Не стоит кэшировать динамические и часто обновляемые данные, а также критически важную…
Что происходит после нажатия кнопки в браузере (HTTP-пайплайн) событие click передаётся JS-обработчику браузер собирает HTTP-запрос (method, headers, body) DNS преобразует имя хоста в IP-адрес создаётся TCP-соединение…
бизнес-логику и правила обработки данных преобразование и проверку входных данных orchestration обращений к нескольким репозиториям и внешним API контроль транзакций и согласованности состояний отделение контроллеров…