> Faqs > Cambiar la versión de PHP en el PHP-CLI (PHP por línea de comandos)

Cambiar la versión de PHP en el PHP-CLI (PHP por línea de comandos)

Tengo un problema en mi servidor, porque se me ha instalado PHP 8 y no consigo instalar dependencias de Composer que requieren la versión PHP 7 en vez de PHP 8.

En el servidor web lo sé cambiar. De hecho, PHP en la web sigue funcionando en php 7.4, lo que está perfecto.

Sin embargo, al acceder por línea de comandos a PHP no usa la versión 7 sino la 8. Hago el comando:

composer install

Y me muestra este mensaje (entre otros similares):

paragonie/random_compat v9.99.99 requires php ^7 -> your PHP version (8.0.1) does not satisfy that requirement.

Luego hago php -v y me sale esto:

PHP 8.0.1 (cli) (built: Jan 13 2021 08:21:37) ( NTS )
Copyright (c) The PHP Group
[...]

¿Cómo puedo hacer un downgrade de PHP para que PHP-CLI me tome la versión 7.4 que tengo también instalada en el servidor?

Respuestas

En Ubuntu al menos (no sé en otras distros) existe una carpeta llamada /etc/alternatives/ que es donde están los enlaces simbólicos con los ejecutables que se corren al lanzar comandos desde el terminal.

Si te fijas, hay un enlace simbólico a PHP, que en tu caso tendría algo como esto:

php -> /usr/bin/php8.0*

Tienes que cambiar ese enlace simbólico para que te apunte al binario de PHP en la versión que necesites.

El primer paso sería borrar el archivo del enlace simbólico, con este comando:

sudo rm /etc/alternatives/php

A continuación creas el nuevo enlace simbólico con la versión que necesites, colocando la ruta del binario de PHP que tienes en tu servidor y quieres que funcione en el PHP-CLI. Por ejemplo sería algo como esto:

sudo ln -s /usr/bin/php7.4 /etc/alternatives/php

Si quieres saber más sobre este comando mira la faq crear un enlace simbólico en Linux.

Por último puedes comprobar la versión de PHP que tienes ahora por línea de comandos con:

php -v

Si todo ha ido bien te dirá que estás ejecutando PHP 7.4, con un mensaje como este:

PHP 7.4.14 (cli) (built: Jan 13 2021 08:04:06) ( NTS )
...
Miguel Angel
3145 140 209 17