viernes, 6 de febrero de 2015

Lectura de XML con PHP

Con PHP es sumamente sencillo leer y parsear ficheros XML. Para ver como se hace, lo mejor es hacerlo con un ejemplo.

Supongamos el siguiente fichero XML, que puede ser utilizado por un WebService, y que contiene nombres de método para el WebService y la sentencia SQL que debe ejecutar en cada uno de ellos:
<?xml version="1.0" encoding="utf-8" ?>
<OpcionesDisponibles>
  <opcion>
    <nombre>GetPaises</nombre>
    <SQL>SELECT cod_pais,pais FROM paises order by pais</SQL>
  </opcion>
  <opcion>
    <nombre>GetPais</nombre>
    <SQL>SELECT cod_pais,pais FROM paises WHERE cod_pais='#PARAMETRO_1#'</SQL>
  </opcion>
</OpcionesDisponibles>
Ahora, supongamos que desde PHP deseamos tener una función que dado el nombre del método, nos devuelva la SQL a ejecutar. La solución es tan simple como la siguiente:
// Dado un nombre de opción, buscar en el xml su SQL correspondiente
function getSQL($nombreOpcion)
{
  $xmlOpciones = simplexml_load_file('opciones.xml');
  $sql = ""; 
  foreach ($xmlOpciones->opcion as $opcion)
  {
    $nombre = $opcion->nombre;
    if ($nombre == $nombreOpcion)
    {
      $sql = $opcion->SQL;
      break;
    }
  }
  return $sql;
}
Así de sencillo.

0 comentarios :

Publicar un comentario

 

Copyright @ 2015 Tosblama