CMS и PHP

Доработка сайтов на PHP

PHP остаётся рабочей лошадкой рунета: от самописных админок десятилетней давности до Laravel-проектов 2026 года. Разбираем, как оценивать и вести такие доработки без риска сломать продакшн.

Обновлено 2026-09-3015 мин чтения

PHP — до сих пор самый распространённый язык серверной части рунета: на нём написаны и десятилетние самописные системы, и свежие проекты на Laravel или Symfony. Доработка такого сайта — это всегда сначала разбор конкретного стека, а не универсальный прайс «за строчку кода». Один и тот же запрос — «добавить личный кабинет» — может занять день на Laravel с готовой авторизацией и неделю на самописной системе без единого класса аутентификации.

Три типа PHP-проектов, которые встречаются на практике

  • Легаси-самопис: процедурный код или ранний ООП без фреймворка, часто без версий и тестов
  • Проект на фреймворке первого поколения: старый Yii, CodeIgniter, Zend без миграций и очередей
  • Современный стек: Laravel/Symfony с composer, миграциями, тестами и CI
  • Гибрид: CMS (Bitrix, MODX, самописная) плюс кастомные модули на чистом PHP

Что обычно просят доработать

  1. Новый функционал: личный кабинет, калькулятор, подписка, экспорт данных
  2. Интеграции: платёжные системы, CRM, службы доставки, 1С, мессенджеры
  3. Исправление багов в бизнес-логике: некорректные расчёты, гонки данных, утечки памяти в долгих процессах
  4. Оптимизация запросов к БД: N+1, отсутствующие индексы, тяжёлые JOIN на больших таблицах
  5. Миграция части логики на актуальную версию PHP (8.x) без потери совместимости

Как оценивают доработку без документации

Если проект без тестов и внятной архитектуры, первый шаг — не кодирование, а разведка: найти точку входа запроса, понять слой данных, отследить побочные эффекты. На это уходит от пары часов до пары дней в зависимости от объёма кода. Честный подрядчик включает это время в оценку отдельной строкой, а не растворяет в общей цифре — так заказчик видит, за что платит на старте.

  • Просмотр структуры каталогов и точек входа (index.php, роутинг)
  • Поиск мест, где меняются данные — модели, DAO, прямые SQL-запросы
  • Проверка версии PHP и совместимости с текущими библиотеками
  • Оценка покрытия тестами (если есть) — от этого зависит риск регрессии

Безопасность точечных правок

Правки в старом PHP-коде опасны не сложностью синтаксиса, а скрытыми связями: одна и та же функция может использоваться в трёх разных сценариях, и правка ради одного из них ломает два других. Работающая практика — покрыть минимальными тестами именно тот участок, который меняется, до правки, а не после. Так регрессия видна сразу, а не через две недели в проде.

Когда пора не дорабатывать, а переписывать

  • Каждая новая фича занимает больше времени, чем предыдущая аналогичная
  • Нет ни одной версии PHP, под которую код можно спокойно обновить без правок в половине файлов
  • Логика дублируется в пяти местах с мелкими отличиями
  • Развернуть проект на новом сервере — отдельный квест на несколько дней

Если совпало три пункта из четырёх — доработка становится дороже переписывания уже на горизонте года. Здоровый средний путь — постепенный рефакторинг: новый функционал сразу пишется по современным практикам (composer-зависимости, слои, тесты), а старый код трогается только по необходимости.

Окружения, деплой и сопровождение после правки

Даже идеальная правка в локальной копии бессмысленна, если на продакшене другая версия PHP, отключены нужные расширения или cron не запускает фоновые задачи. Перед сдачей задачи стоит зафиксировать минимальные требования к серверу, порядок выкладки (миграции БД, очистка opcache, прогрев кеша) и кто отвечает за откат, если что-то пошло не так. Для проектов без CI хотя бы чек-лист ручного деплоя снижает риск «забыли залить один файл» — типичной причины странных багов, которые невозможно воспроизвести локально.

  1. Сверить версию PHP и список расширений на staging и проде
  2. Прописать порядок миграций и бэкапа БД перед релизом
  3. Проверить права на каталоги загрузок и логов после выкладки
  4. Зафиксировать в задаче, какие URL и сценарии проверены после деплоя

FAQ

Сколько стоит доработка сайта на PHP?

Точечные правки и небольшие фичи — от 3 000–5 000 ₽ за задачу после короткого просмотра кода. Крупный функционал (личный кабинет, интеграция с CRM) оценивается отдельно, обычно от 20 000 ₽, в зависимости от состояния проекта.

Можно ли работать без доступа к репозиторию, только с FTP?

Технически можно, но это резко повышает риск: без версионирования любая правка может остаться незамеченной или конфликтовать с параллельными изменениями. Для серьёзной доработки лучше сначала перенести код в git.

Стоит ли сразу переводить старый проект на Laravel?

Не всегда. Если бизнес-логика стабильна и правки редки, миграция может не окупиться. Решение принимают по частоте изменений, доступности разработчиков под текущий стек и стоимости простоя при переезде.

Как понять, что подрядчик адекватно оценил задачу на PHP-проекте?

Он должен объяснить, откуда взялась цифра: сколько времени на разведку кода, сколько на реализацию, сколько на тестирование. Оценка «сумма с потолка» без разбора кода — красный флаг.

SEO-продвижение · Создание сайтов · Ещё в разделе «CMS и PHP»

Читайте также

16 мин

Backend-разработка сайтов

Бэкенд — это не «магия сервера», а конкретные решения: как хранятся данные, как проверяется личность пользователя, что происходит при нагрузке. Разбираем по частям, без лишнего усложнения на старте.

15 мин

Интеграция API

Каждая интеграция — это точка, где ваш сайт становится зависим от чужой системы. Разбираем, как подключать внешние API так, чтобы сбой чужого сервиса не превращался в потерю заявок.

17 мин

Разработка CRM

Готовые CRM закрывают 80% типовых задач. Разбираем, в каких случаях бизнесу нужна кастомная система, и как правильно спроектировать сущности и процессы, чтобы CRM не превратилась в очередную неудобную таблицу.

Нужен сайт под спрос и заявки?

Разберём задачу, предложим структуру и ориентир по срокам. Без воды и «продающих» слайдов.