PHP upgrade service

Modernize a legacy PHP application without a framework

Standalone PHP files, includes and custom database code are a valid starting point. The absence of a framework does not justify a complete rebuild by itself.

Your PHP version, hosting setup and any error message are usually enough to start the conversation.

I’m Stefan Pilz, a PHP and Shopware developer based in Paphos, Cyprus. I help companies and agencies take over, upgrade and maintain existing PHP software remotely across Europe and worldwide.

  • Building PHP websites since 2004
  • Work directly with the developer
  • Custom applications welcome
  • Framework optional

Custom code is still an application worth understanding

The software may have grown over years with no Composer structure. Business rules live in PHP files, queries and forms. It may use a shared configuration, several entry points and scheduled jobs.

None of that rules out an upgrade. A modern project skeleton or object-oriented design is not a prerequisite. What matters is the application’s behaviour and the dependencies it actually uses.

Taking over an unfamiliar codebase

Map the entry points

Which files does the web server execute? What do they include? Which tasks run on a schedule? These questions establish how the application works.

Understand the business rules

Which rules control forms, calculations, data changes and output? Together we identify the results that must be preserved and document missing knowledge as we go.

Find dependencies outside a package manager

No Composer file does not mean no dependencies. Copied libraries, mail components, database drivers and server extensions still need review alongside custom code.

Upgrade the runtime, improve structure where it helps

Compatibility comes first. A targeted refactor can make a function or database operation easier to maintain where it supports the agreed work. It does not have to expand into a replacement architecture.

A structure that remains fit for purpose can stay. If it prevents future changes, we can agree focused refactoring or broader legacy modernization separately. Symfony is one option, not a condition of taking on the project.

Before and after: a completed project

Starting point

A custom website developed many years ago used numerous PHP files and PHP 5.6. No framework, no Symfony, no Laravel.

Outcome

The existing code was adapted to PHP 8.4. The application runs on that version and can be developed further. No full rewrite was necessary.

Read the complete anonymous case study. It describes that project rather than predicting the effort for every custom application.

Build on the application after the upgrade

New forms, exports, administration features and API integrations can build on the retained system. A frontend refresh can be planned independently. See the PHP upgrade process.

FAQ

Must we introduce Composer first?

No. Composer can help manage libraries, but it is not required for every upgrade. Its value depends on the project.

Can procedural PHP stay procedural?

Yes, where it remains fit for purpose. Changes should address a concrete risk or requirement, not just a preferred coding style.

What if the previous developer cannot be reached?

I can take over unfamiliar code. Source files, system access and people who know the workflows help with the review. Missing knowledge affects how much investigation is needed.

Tell me what your PHP application needs

Your PHP version, hosting setup and any error message are usually enough to start the conversation.

If available, include the target PHP version and a short description of the application. You do not need a complete specification to get in touch.