Cuando se lanza una nueva versión de una tecnología, tendemos a comparar lo que ha cambiado con respecto a la versión anterior. Esto ocurrió bastante con PHP, que tuvo su versión 8 lanzada a finales del año pasado.
Para realizar la comparación de los cambios de la nueva versión, podemos instalar dos versiones del lenguaje. Ya hemos mostrado cómo hacer esto con Ubuntu. Puedes acceder a ese contenido haciendo clic aquí.
En este artículo volveremos a hablar sobre cómo instalar dos versiones de PHP, pero ahora en Windows.
Descargando las dos versiones
Primero vamos a descargar PHP en la versión 7.4. Para ello, utilizaremos el siguiente enlace: https://windows.php.net/downloads/releases/php-7.4.13-nts-Win32-vc15-x64.zip
El archivo descargado estará comprimido. Vamos a extraerlo en la ruta C:/tools/php/php7.
Después, vamos a descargar PHP 8 a través de este otro enlace: https://windows.php.net/downloads/releases/php-8.0.0-nts-Win32-vs16-x64.zip
Extraeremos este archivo en una ruta similar, cambiando solo la carpeta final a php8.
Ahora comenzaremos la configuración de las dos versiones, que será la misma para ambas. Este procedimiento se puede ver con más detalles en el artículo PHP 8 en Windows 10 con servidor Nginx.
Configurando el archivo php.ini
Cambiaremos el nombre del archivo php.ini-development a php.ini. Realizaremos algunos cambios en este archivo.
La primera directiva que vamos a cambiar es el error_reporting:
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT
La siguiente directiva es doc_root:
doc_root = "C:\www"
A continuación, cambiaremos las directivas extension_dir y sys_temp_dir:
extension_dir = "ext"
sys_temp_dir = "C:\Windows\Temp"
Y por último, habilitaremos algunas extensiones de PHP:
extension=curl
extension=fileinfo
extension=mbstring
extension=exif
extension=mysqli
extension=openssl
extension=pdo_mysql
Agregando PHP al PATH del sistema
El siguiente paso implica agregar el ejecutable de PHP a las variables del sistema. Esto permitirá que ejecutemos PHP a través de su línea de comando nativa y que podamos ejecutarlo en cualquier carpeta de la computadora.
Accederemos a la carpeta donde extraímos los archivos de PHP 7 y renombraremos el archivo php.exe a php7.exe:
Repetiremos el mismo proceso para la carpeta de PHP 8:
Ahora, de hecho, vamos a agregar estos archivos a las variables del sistema.
En el Explorador de Windows, encuentra en el panel de la izquierda el elemento “Este Computador”, haz clic derecho sobre él y selecciona la opción “Propiedades”:
En la ventana que se abre, seleccionaremos la opción “Configuración avanzada del sistema”:
En la siguiente ventana, haremos clic en “Variables de Entorno”:
A continuación, veremos otra ventana que mostrará las variables de usuario y también las variables del sistema. Vamos a editar esta segunda opción. Selecciona la variable “Path”, que se volverá azul, y haz clic en el botón “Editar”:
En la ventana siguiente, haz clic en el botón “Nuevo”, que estará en la esquina superior derecha. Se abrirá un nuevo espacio en las variables del Path. Desde allí, podrás pegar la ruta a la carpeta del PHP 7. En nuestro caso, esta ruta es C:\tools\php\php7. Por último, solo repite este mismo proceso para la carpeta del PHP 8. La lista de carpetas deberá quedar así:
Podemos cerrar todas las ventanas para realizar nuestra primera prueba con estas versiones.
Probando las dos versiones de PHP
Para realizar nuestra primera prueba, crearemos un archivo PHP e insertaremos la función phpinfo() en su estructura.
Abriremos un Terminal en la carpeta donde se creó este archivo y ejecutaremos el siguiente comando:
php7 -S localhost:80
Nota que “php7” es el nombre del archivo ejecutable que hemos renombrado.
Ahora, al acceder a localhost en nuestro navegador a través del puerto 80, que es el predeterminado, vemos el siguiente resultado:
Ahora, abramos otro Terminal en la misma carpeta e iniciemos un nuevo servidor PHP, pero usando otro puerto, como el 81. Para eso, utilizaremos el siguiente comando:
php8 -S localhost:81
Ahora, cuando accedemos a la dirección localhost:81 en el navegador, vemos el siguiente resultado:
¡Impresionante! Pudimos ver la información de PHP 8. Lo más interesante es que localhost en el puerto 80 sigue funcionando normalmente. ¿Están trabajando de forma separada?
Conclusión
En este artículo aprendimos a configurar dos versiones de PHP en Windows. Ahora estamos preparados para probar las diferencias entre las dos versiones del lenguaje a través del servidor nativo de PHP, realizando las pruebas de la versión 7 y 8 en el mismo archivo.
Recordando que puedes aprender todas las novedades del lenguaje PHP en la versión 8 en nuestro curso PHP 8 - El Lenguaje. ¿
Hasta el próximo artículo :).