Conectar PHP con Oracle

Últimamente he estado trabajando en un proyecto en el cual es necesario que sea escalable en cuanto a la conexión a base de datos Hablo de escalabilidad ya que la aplicación debe de conectarse con MySQL y Oracle mediante PHP, con la primer Database no hay problema ya que PHP trabaja bastante bien con MySQL, pero con Oracle si había que habilitar cierta extensión para poder trabajar, ó instalar una aplicación la cual tenia la extensión necesaria. 

Lo primero que tenemos que hacer es comprobar si existe alguna extensión oci8, para eso buscamos esta cadena en el phpinfo():

extension oci8

Si encontramos alguna cadena después de la cadena oci8, como en la anterior imagen, solo bastara con modificar una linea en el php.ini y reiniciar el servidor.

Para modificar el archivo iremos a la ubicación donde se encuentra, en este caso es c:xamppphp pero esto varía dependiendo del OS y de el paquete xampp, editaremos con nuestra aplicación favorita para tal fin:

phpini

Una vez abierto el archivo buscaremos la siguiente linea y eliminamos el ” ; ” asi descomentando:

1
extension=php_oci8_11g.dll

oci8 oracle 11g

Solo nos queda reiniciar el servicio del Servidor Apache, así que paramos e iniciamos el servidor para que tome los cambios. Ojo, esto es importante!

reiniciar apache

Ahora si la versión que tengamos no tenga este soporte nativo para Oracle? Googleando encontré una solución para este problema.

Ahora veamos si nos funciona, crearemos una carpeta en nuestro servidor local, a nuestro gusto, y en ella el archivo que hará la conexión con el Servidor Oracle:

La linea 3 es la encargada de la conexion, esta consta del nombre de usuario, la contraseña, y host de Oracle. Recordemos que el host se puede manejar tanto por IP como por el nombre de la maquina.

Bueno, para finalizar, si todo sale bien podremos ver el siguiente resultado cuando abramos el archivo por el navegador web:

conexion php con oracle

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *