Cargar extensión de PHP desde código en tiempo de ejecución

Las extensiones de PHP son una parte muy importante dentro del lenguaje de programación. Una extensión de PHP no es más que un 'módulo' que le permite al motor de PHP añadir una determinada funcionalidad. Aunque, por norma general, las extensiones que necesitas en condiciones normales vienen ligadas a la distribución de PHP que estés utilizando; es posible que por las características de proyecto necesites añadir nuevas funcionalidades. Algo que solo puedes hacer cargando esas extensiones. Como el lenguaje en el que operan, una extensión de PHP suele estar escrita en C; y requerir de DLL para poder compilarlas o cargarlas. En este caso, si quieres cargar una extensión de PHP, puedes hacerlo de dos formas. Por un lado, puedes optar por compilar la extensión que necesites; o, por otro puedes obtenerla cargando el DLL. La opción más recomendada es mediante DLL. Pero, para ello, dicha extensión deberá primero encontrarse como fichero .dll en tu sistema. En el caso de que no la encuentres, tendrás que compilarla. Aunque las extensiones más habituales suelen venir por defecto con el lenguaje de programación PHP, siempre puedes añadir alguna nueva. Algo que en la mayoría de los casos puedes obtener desde la PECL (Biblioteca de la Comunidad de Extensiones de PHP). Esta biblioteca no es más que un repositorio de extensiones de PHP donde se encuentran las más utilizadas. Y también el lugar en el que puedes desarrollar tus propias extensiones para PHP y compartirlas con la comunidad de desarrolladores. Cargando una extensión…

Las extensiones de PHP son una parte muy importante dentro del lenguaje de programación. Una extensión de PHP no es más que un ‘módulo’ que le permite al motor de PHP añadir una determinada funcionalidad. Aunque, por norma general, las extensiones que necesitas en condiciones normales vienen ligadas a la distribución de PHP que estés utilizando; es posible que por las características de proyecto necesites añadir nuevas funcionalidades. Algo que solo puedes hacer cargando esas extensiones.

Como el lenguaje en el que operan, una extensión de PHP suele estar escrita en C; y requerir de DLL para poder compilarlas o cargarlas. En este caso, si quieres cargar una extensión de PHP, puedes hacerlo de dos formas. Por un lado, puedes optar por compilar la extensión que necesites; o, por otro puedes obtenerla cargando el DLL. La opción más recomendada es mediante DLL. Pero, para ello, dicha extensión deberá primero encontrarse como fichero .dll en tu sistema. En el caso de que no la encuentres, tendrás que compilarla.

Aunque las extensiones más habituales suelen venir por defecto con el lenguaje de programación PHP, siempre puedes añadir alguna nueva. Algo que en la mayoría de los casos puedes obtener desde la PECL (Biblioteca de la Comunidad de Extensiones de PHP). Esta biblioteca no es más que un repositorio de extensiones de PHP donde se encuentran las más utilizadas. Y también el lugar en el que puedes desarrollar tus propias extensiones para PHP y compartirlas con la comunidad de desarrolladores.

Cargando una extensión de PHP

Para cargar una extensión en tiempo de ejecución en PHP podemos incluirla dentro del fichero php.ini de configuración. Para ello, deberemos recurrir a la función dl(). Lo habitual es que una extensión de PHP se escriba de la siguiente manera: «php_nombre de la extensión».dll. Y suele ser igual de habitual que dicha extensión se encuentre junto a «PHP\ext». En este caso, si quisiéramos cargar una extensión que pueda conectarse a una base de datos MySQL, deberíamos hacer lo siguiente:

if(!extension_loaded("mysql")){
  dl("php_mysql.".PHP_SHLIB_SUFFIX);
}

Aquí, el valor de la constante PHP_SHLIB_SUFFIX almacena la extensión que tendría una librería dependiendo el sistema operativo en el que corra nuestra aplicación.

Recuerda que, tras cargar y activar una nueva extensión de PHP, deberías reiniciar el servidor. Solo mediante un reinicio es posible confirmar que se han aplicado los cambios y comprobar que la nueva extensión cuenta con su propia sección. Es decir, que se ha cargado de una forma correcta.

Si quieres saber mucho más acerca de PHP y otros lenguajes de programación, sigue leyendo nuestro blog tecnológico y no te pierdas los artículos y novedades relacionadas con PHP como el post de cómo instalar extensión php-memcached en Suse Linux.

Compartir
Etiquetas PHP

Artículos recientes

¿Cómo ha sido la evolución del hosting en solo unas décadas?

¿Alguna vez te has parado a pensar el gran cambio que ha experimentado el sector del hosting en tan poco…

4 diciembre, 2019

Segunda oportunidad para el software abandonado, ¿qué es el abandonware?

Cuando no en todas las casas había ordenadores la vida social de la mayoría de los jóvenes y adolescentes giraba…

27 noviembre, 2019

¿Cómo van tus preparativos para el Black Friday?

Es evidente que cada vez la navidad ‘llega’ antes, pero si antes la época más mágica del año se iniciaba…

20 noviembre, 2019

Contenedores de software para empaquetar aplicaciones

Actualmente un desarrollador es capaz de crear código y de distribuirlo sin problemas. Antes estas labores que estaban diferenciadas entre…

13 noviembre, 2019

Amplía el espacio de tu servidor con soluciones de almacenamiento: NAS y SAN

A medida que los proyectos van creciendo es muy probable que los recursos iniciales que se contrataron no sean suficientes…

6 noviembre, 2019

El ataque informático que engaña a los CDN: CPDoS

Que Halloween sea la noche más terrorífica del año tampoco tiene porqué ser algo literal. El temor a sufrir un…

29 octubre, 2019

Nuestro sitio web utiliza cookies para mejorar la navegación y obtener datos estadísticos sobre las visitas obtenidas.

Leer más