
Пространства имён в PHP: чек-лист перед продакшеном
Autoloader молчит на локали и падает Class not found в проде. Разбираем, что проверить в namespace, use и composer.json до деплоя, чтобы регистр файлов и кеш классов не уронили сборку.

Autoloader молчит на локали и падает Class not found в проде. Разбираем, что проверить в namespace, use и composer.json до деплоя, чтобы регистр файлов и кеш классов не уронили сборку.

Перед деплоем PHP-проекта проверяют не только тесты. Разбираем, какие PSR реально влияют на автозагрузку и продакшен, и собираем чек-лист, который ловит проблемы до того, как они дойдут до боевого сервера.

Три способа находить классы в PHP-проекте дают разную скорость и разные ограничения на структуру папок. Разбираем, что выбрать для нового проекта, легаси и продакшена.

Class not found на проде, а локально всё работает. Разбираем, как PSR-4 маппит неймспейсы на файлы, почему регистр имени класса решает всё и когда classmap быстрее автозагрузки.

Форма обратной связи и корзина интернет-магазина — первые цели для инъекций, XSS и CSRF. Разбираем, где типичный PHP-код на приёме данных дырявый и как закрыть эти дыры без магии.

За полчаса вы отделите HTML от логики в PHP-проекте без Blade и Twig — на чистом PHP. Разберём подключение шаблона, передачу данных и защиту от XSS.

Composer не просто скачивает пакеты. Он строит карту автозагрузки, разрешает конфликты версий и фиксирует состояние в lock-файле. Разбираем, что происходит внутри на примере реального проекта.

Белый экран вместо сайта на PHP чаще всего означает, что ошибки просто скрыты. Разбираемся, как их включить, прочитать и не путать четыре разных уровня серьёзности.

Первая программа с переменными, объявление типов, ввод с клавиатуры и вывод результата. За 20 минут вы соберёте калькулятор возраста и разберётесь, почему компилятор ругается на типы.

Как отправить первое письмо из PHP: встроенная mail(), почему она чаще всего попадает в спам, и рабочая связка PHPMailer с SMTP-аутентификацией. С проверками на каждом шаге.

Пошаговое подключение к MySQL из PHP через PDO: от установки драйвера до первого безопасного запроса с параметрами. Займёт около 20 минут.

using namespace std в заголовке, ADL, который подтягивает не ту перегрузку, и функции, тихо конфликтующие между файлами. Разбираем, где новичок в C++ спотыкается о namespace и как этого избежать.