Saltar al contenido
EdgeServers
Blog

Actualizar a PHP 8.3 en producción — el playbook de migración para flotas Laravel, Symfony y WordPress

26 de mayo de 2026 · 1 min de lectura · por Sudhanshu K.

PHP 8.3 es el objetivo «aburrido, rápido, fiable» actual para la mayoría de flotas de producción. La mayoría de apps cruzan limpiamente desde 8.1 o 8.2. Un conjunto pequeño pero afilado de deprecaciones es lo que pilla a los equipos — propiedades dinámicas sin #[AllowDynamicProperties], el cambio de firma de assert() y las reglas de amend de readonly — todas lanzan en runtime, no en build.

Este es el playbook escalonado que ejecutamos en flotas de clientes para moverlas de forma segura.

El despliegue escalonado

# .github/workflows/php-version-matrix.yml
strategy:
  matrix:
    php-version: ['8.1', '8.2', '8.3']
steps:
  - uses: shivammathur/setup-php@v2
    with: { php-version: ${{ matrix.php-version }} }
  - run: composer install --prefer-dist
  - run: vendor/bin/phpunit
  - run: vendor/bin/phpstan analyse --error-format=github

La CI corre contra tres versiones simultáneamente durante al menos dos semanas antes del upgrade. PHPStan a nivel 8 + una capa de reporting de errores de deprecación saca a la luz el 90 % de las roturas antes de que el tráfico las vea.

El artículo completo cubre:

  • La lista de deprecaciones 8.1 → 8.3 ordenada por frecuencia en bases de código reales
  • Rector — la herramienta de auto-fix que hace la mayor parte del trabajo mecánico
  • El patrón error_reporting = E_ALL + log-luego-strict para pillar deprecaciones en producción
  • Pegas específicas de frameworks (serializador de colas Laravel, Symfony 6.4 LTS, compat de WordPress core)
  • El patrón blue/green deploy para el cutover real
  • Plan de rollback: mantener un container de 8.2 en el registry tagueado previous

Usamos este playbook en cada upgrade de flota PHP que ejecutamos.

Artículo completo disponible

Leer el artículo completo