HOW TO:Instalar PHP 5.3 en Fedora
Hola a todos!, hace mucho tiempo que no posteaba algo.
Éste post creo que le interesará a varios desarrolladores web que quieran disfrutar de las bondades del casi nuevo PHP 5.3, algunas de las características nuevas incorporadas (que no dejan de ser, sobre todo para los que disfrutan de un trabajo “ordenado”) son las siguientes:
- Namespaces - Sí señores!!! éste recurso tan valioso por el que muchos pelearon y firmaron para su inclusión, por fin fue tomado en cuenta, claro está que aun se encuentra en su etapa primitiva, pero puedo decir por experiencia – ya testié este magnifico release – que funciona de mil maravillas!
- Late static bindings – Éste es un concepto nuevo, incorporado por PHP, que se basa en el trabajo con métodos estáticos durante el runtime, la esencia de éste concepto es más que nada “obligar” al pc, a que si se trabaja con herencia de clases, en el caso de métodos heredados o locales, usar el último elemento static definido, que a diferencia de self, puede ser de la clase padre o de la hija. (Esto es lo que yo he entendido, si alguien entendió algo diferente lo invito a corregirme en los comentarios
, éste concepto es nuevo así que es dificil entenderlo de primeras) - Closures - Muchos esperaban también ésta característica, los closures son funciones anónimas, de manera similar a Javascript.
- Recolector de basura opcional para referencias cíclicas – PHP borra las referencias no utilizadas al finalizar un ámbito , pero al momento de definir clases o variables con referencias a veces se busca eliminar ciertas referencias antes de salir del ámbito (lo que si no es bien tratado puede producir memory leaks), lo que busca este recolector es más que nada eso, cuando se presentan referencias cíclicas facilitar el trabajo de liberación adecuada de memoria (evitándonos los molestos unsets que a más de alguno supongo le ha quebrado el cráneo buscando el problema en la fuga de memoria)
- Nuevas extensiones, se arreglaron alrededor de 140 bugs, entre otras cosas.
A continuación enseñaré como instalar PHP 5.3 en Fedora (Sí, aún no se incluye en los repos oficiales por ser relativamente nuevo).
Requisitos:
- YUM instalado
- RPM instalado
Primero instalamos el package remi-release, que es un package creado por un francés, puedes ver su blog acá, éste paquete provee la configuración del repositorio para YUM y la llave GPG usada para firmar el repositorio, ¿cómo se hace?, copy-pastea lo siguiente en el terminal según tu versión:
Fedora 12 i386, ppc, ppc64 o x86_64
rpm -Uvh http://rpms.famillecollet.com/remi-release-12.rpm
Fedora 11 i386, ppc, ppc64 o x86_64
wget http://rpms.famillecollet.com/remi-release-11.rpm
rpm -Uvh remi-release-11.rpm
Fedora 10 i386, ppc, ppc64 o x86_64
wget http://rpms.famillecollet.com/remi-release-10.rpm
rpm -Uvh remi-release-10.rpm
Fedora 9 i386, ppc, ppc64 o x86_64
wget http://rpms.famillecollet.com/remi-release-9.rpm
rpm -Uvh remi-release-9.rpm
Fedora 8 i386, ppc, ppc64 o x86_64
wget http://rpms.famillecollet.com/remi-release-8.rpm
rpm -Uvh remi-release-8.rpm
Fedora 7 i386, ppc o x86_64
wget http://rpms.famillecollet.com/remi-release-7.rpm
rpm -Uvh remi-release-7.rpm
Fedora Core 6 i386, ppc o x86_64
wget http://rpms.famillecollet.com/remi-release-6.rpm
rpm -Uvh remi-release-6.rpm
Fedora Core 5 (repositorio no mantenido)
wget http://rpms.famillecollet.com/remi-release-5.rpm
rpm -Uvh remi-release-5.rpm
Fedora Core 4 (repositorio no mantenido)
wget http://rpms.famillecollet.com/remi-release-4.rpm
rpm -Uvh remi-release-4.rpm
Fedora Core 3 (repositorio no mantenido)
wget http://rpms.famillecollet.com/remi-release-3.rpm
rpm -Uvh remi-release-3.rpm
Luego configuramos manualmente YUM:
su -
cd /etc/yum.repos.d
wget http://rpms.famillecollet.com/remi-fedora.repo
Se instala la llave GPG correspondiente al repositorio:
rpm --import RPM-GPG-KEY-remi
Luego se lista la llave instalada mediante el comando:
rpm -q gpg-pubkey --qf "%{summary} ->%{version}-%{release}\n"
Para todo este proceso, si quedas con dudas (y le pegas al inglés) puedes visitar el blog.
Para instalar PHP 5.3 obviamente debes tener instalados los servicios httpd (al menos en fedora 11 vienen instalados asi que no habría complicaciones).
Para instalar al susodicho recurso, usaremos el siguiente comando en nuestra consola y con atributos de root:
yum --enable remi update php-\*
Y voilá, php 5.3 se configura igual que sus versiones anteriores, no deberías tener problemas (a menos que seas novato, para cualquier efecto, basta con configurar el php.ini, y la parte de DocumentRoot en caso que quieras cambiar la carpeta, pero eso no es tema ahora, corresponde a la configuración de PHP
, si quieres aprender a configurar un servidor web, mejor aprende a configurar apache que es el que mueve todo el asunto).
Y bueno, ahora solo queda probar las nuevas características, php proporciona una buena documentación como para entender a cabalidad y mediante ejemplos como trabajar de manera óptima con cada uno de sus elementos.
Si lo quieren en algún post puedo mostrar como trabajar con Namespaces y closures
ya que ese tema no va al caso ahora.
Espero éste corto tutorial les sirva y puedan disfrutar, como yo, de las nuevas características de PHP 5.3
.
Saludos!
Fatal error: Allowed memory size of 94371840 bytes exhausted (tried to allocate 128 bytes) in /home/trickyweb/trickyweb.cl/wp-settings.php on line 288