Curso de HTML y CSS: Lectura y escritura de ficheros XML

Escrito por Adrián Crespo
HTML
0

Tal y como indicamos en la anterior entrega, donde os enseñamos a utilizar la información insertada en los formularios, vamos a continuar la andadura con el curso de HTML y CSS hablando de los ficheros XML. Seguro que muchos habéis visto alguno pero sin embargo no sabéis muy bien para qué sirven. Os vamos a dar las claves de estos ficheros, así como escribir y leer en ellos.

El nombre XML viene del inglés eXtensible Markup Language (lenguaje de marcas extensible). Evidentemente no nos vamos a entretener contando la historia de estos archivos, ya que si realmente estáis interesados podéis consultar diferentes bibliografías que se encuentran en Internet. La finalidad de estos archivos es bastante clara: simplificar la comunicación entre dispositivos. Es decir, facilitar la comunicación de varios dispositivos con respecto a una base de datos, siendo capaces de recoger lecturas y escrituras, y facilitando mucho su interpretación debido a que se tratan de ficheros cuyo contenido posee cierta jerarquía, si es que es puede llamarse así.

De esta forma, un ejemplo de fichero XML podría ser el siguiente:

curso de html y css ejemplo archivo xml

Como se puede ver, tenemos un elemento principal que es Edit_Mensaje que está formado por un elemento que es Mensaje y a su vez está formado por otros elementos: Remitente, Destinatario y Texto.

Tal y como se puede ver las etiquetas tienen tanto apertura como cierre, siendo el texto que se encuentra entre estas el valor de cada etiqueta. Lo del tabulado es algo que NO es obligatorio, pero como se puede ver facilita y mucho la comprensión del contenido del archivo XML.

Utilización de SimpleXML

  • La extensión SimpleXML de PHP facilita el trabajo con especificaciones XML.
  • Esta extensión está disponible en la versión PHP 5 y se encuentra habilitada de modo predeterminado.
  • La función simplexml_load_file (file) toma como parámetro la ruta donde se ubica el archivo xml y retorna un objeto SimpleXMLElement con los datos del archivo.

Ejemplo de utilización de SimpleXML:

ejemplo lectura simplexml

Lectura

En primer lugar vamos a comenzar con la lectura de elementos en ficheros XML. Vamos a ver dos tipos de lecturas:

  • Lectura de elementos
  • Lectura de atributos

Realmente no es que existan dos tipos de lecturas como tal, pero sí que queremos destacar más que nada cómo se pueden acceder tanto a los elementos como los atributos que pudiesen poseer estos.

Lectura de elementos

  • El objeto SimpleXMLElement almacena todos los elementos de la especificación XML mediante arrays.
  • De este modo es posible acceder a los distintos elementos mediante las técnicas de iteración.
  • En este ejemplo, se muestra cómo acceder al nombre del primer cliente.

recorrer elementos xml curso de html y css

Lectura de atributos

  • En el ejemplo previo, se ha ilustrado cómo acceder a los elementos y sus valores
  • También es posible acceder a los atributos de los elementos
  • Para ello los atributos también se organizan en arrays
  • En el ejemplo anterior, se podría acceder al identificador de todos los clientes y al nombre del siguiente modo:

recorrer atributos xml curso de html y css

Escritura

Al igual que ya hemos podido ver con la lectura, en la escritura podemos añadir elementos al fichero XML o bien atributos, creando dos posibilidades a la hora de querer modificar un archivo de estas características.

  • La función children permite acceder a todos los elementos hijo de un elemento dado .
  • La función getName permite acceder al nombre de un elemento
  • En este ejemplo, se accede a todos los elementos que descienden directamente del elemento dirección y se itera por ellos accediendo a su nombre y valor.

Escritura de elementos

  • La función addchild permite insertar un nodo hijo a un elemento
  • Esta función toma dos parámetros:
  1. El primer elemento indica el nombre de la etiqueta
  2. El segundo elemento indica el valor del elemento
  • En este ejemplo, se añade a todos los clientes un nuevo elemento denominado “estado” y que toma valor “desactivado”

anadir elementos xml

Escritura de atributos en elementos

  • La función addAttribute permite añadir un nuevo atributo a un elemento
  • Esta función toma dos parámetros:
  1. El primer elemento indica el nombre del atributo
  2. El segundo elemento indica el valor que toma el atributo
  • En este ejemplo, se añade a todos los clientes un nuevo atributo “tipo” y que toma valor “solicitante”

anadir atributo a elemento xml

Guardar los cambios realizados en el fichero XML

  • Tras haber creado o modificado la especificación XML es necesario guardarla en el archivo correspondiente.
  • La función asXML toma como parámetro la ruta de un archivo donde guardará la especificación XML.
  • Esta función retorna TRUE si la especificación se escribió correctamente y FALSE en caso contrario.

guardar cambios ficheros XML

Curso de HTML y CSS: próxima entrega

Después de haber visto lo más esencial de este lenguaje (aún nos quedan muchas cosas) ahora le toca el turno a las hojas de estilo o CSS. Así que la semana que viene tendremos una introducción a las hojas de estilo y cómo repercute su utilización de cada al proyecto web.