SlideShare una empresa de Scribd logo
1 de 42
Descargar para leer sin conexión
Bloque III: PHP y XML
                1. ¿Qué es XML?
                2. Algunos ejemplos de XML
                3. SimpleXML
                4. Servicios Web
                5. Conectándose con un canal RSS
                6. Mostrando mis fotos de Flickr
                7. Listando mis últimos tweets




Desarrollo web avanzado con PHP5
Bloque III: PHP y XML
                1. ¿Qué es XML?
                2. Algunos ejemplos de XML
                3. SimpleXML
                4. Servicios Web
                5. Conectándose con un canal RSS
                6. Mostrando mis fotos de Flickr
                7. Listando mis últimos tweets




Desarrollo web avanzado con PHP5
3.1. ¿Qué es XML?




                         <?xml version=” 1.0” encoding=” utf-8”    ?
                                                                   >
                         <mensaje>Hola Mundo</mensaje>




Desarrollo web avanzado con PHP 5                         Bloque III: PHP y XML
3.1. ¿Qué es XML?

   eXtensible Markup Language

    XML es un lenguaje de etiquetas, como HTML
    XML está diseñado para transportar información, no para mostrarla
    XML no tiene etiquetas predefinidas. Tú puedes definir las tuyas
    XML está diseñado para ser auto-explicativo
    XML es una recomendación del W3C
    XML no hace nada




Desarrollo web avanzado con PHP 5                         Bloque III: PHP y XML
3.1. ¿Qué es XML?

   Definición del tipo de documento

   Tiene que ser la primera línea del documento



                    <?xml version=” 1.0”          encoding=” utf-8”   ?
                                                                      >




Desarrollo web avanzado con PHP 5                                 Bloque III: PHP y XML
3.1. ¿Qué es XML?

   Elementos XML

    XML es case-sensitive




                         <mensaje>Hola Mundo</mensaje>
    Es distinto de

                          <Mensaje>Hola Mundo</Mensaje>




Desarrollo web avanzado con PHP 5                         Bloque III: PHP y XML
3.1. ¿Qué es XML?

   Elementos XML

    El nombre de un elemento

     1. Puede contener letras, números, puntos, dos puntos y acentos
     2. Sólo pueden empezar por letras
     3. No pueden empezar con las letras XML (o xml, o Xml, …)
     4. No pueden contener espacios en blanco




Desarrollo web avanzado con PHP 5                                      Bloque III: PHP y XML
3.1. ¿Qué es XML?

   Elementos XML

    Todas las etiquetas tienes que estar debidamente cerradas


     <mensaje>Hola Mundo</mensaje>

     O si tienen ningún contenido


      <Mensaje />




Desarrollo web avanzado con PHP 5                               Bloque III: PHP y XML
3.1. ¿Qué es XML?

   Elementos XML

    Cualquier XML tiene uno y solo un elemento raíz

     <?xml version=” 1.0”           ?>
                                              <?xml version=” 1.0”   ?>
     <peliculas>
                                              <pelicula>
       <pelicula>
                                                Avatar
         Avatar
                                              </pelicula>
       </pelicula>
                                              <pelicula>
       <pelicula>
                                                Distrito 9
         Distrito 9
                                              </pelicula>
       </pelicula>
     </peliculas>
Desarrollo web avanzado con PHP 5                              Bloque III: PHP y XML
3.1. ¿Qué es XML?

   Elementos XML

    Los elementos deben estar correctamente anidados


          <peliculas>
            <pelicula>
              <directores>
                <director>James Cameron</director>
              </directores>
            </pelicula>
          </peliculas>


Desarrollo web avanzado con PHP 5                      Bloque III: PHP y XML
3.1. ¿Qué es XML?

   Atributos XML

    Normalmente son utilizados para almacenar metainformación del elemento


                <mensaje lang=” es” >Hola Mundo</mensaje>


    Podemos usar tanto comillas simples como dobles


                <mensaje lang='es' >Hello World</mensaje>




Desarrollo web avanzado con PHP 5                                 Bloque III: PHP y XML
3.1. ¿Qué es XML?

   Espacios en blanco
   Se entiende por “espacio en blanco” saltos de carros, sangrados, tabulaciones y por
   supuesto, un espacio


   Son obligatorios para separar el nombre de un atributo del nombre del elemento


   Son aconsejados para permitir una mejor lectura del documento (tabulaciones para
   indicar anidaciones)




Desarrollo web avanzado con PHP 5                                    Bloque III: PHP y XML
3.1. ¿Qué es XML?

   Espacios en blanco




            <     mensaje lang=” es”   >Hola Mundo</mensaje     >




Desarrollo web avanzado con PHP 5                      Bloque III: PHP y XML
3.1. ¿Qué es XML?

   Espacios en blanco



                  <peliculas><pelicula><directores>
                  <director>James Cameron</director>
                  </directores></pelicula></peliculas>




Desarrollo web avanzado con PHP 5                        Bloque III: PHP y XML
3.1. ¿Qué es XML?

   XML válidos y bien formados

   XML bien formados – cumplen con las reglas del W3C


                                    http://www.w3schools.com/XML/xml_validator.asp



   XML válidos – cumplen con las especificaciones de un DTD o Schema




Desarrollo web avanzado con PHP 5                                  Bloque III: PHP y XML
3.1. ¿Qué es XML?

   El ecosistema XML


                        DTD               Namespaces
               Document Type Definition




                   Schema XML              XForms



                       XPath                XSLT




Desarrollo web avanzado con PHP 5                      Bloque III: PHP y XML
Bloque III: PHP y XML
                1. ¿Qué es XML?
                2. Algunos ejemplos de XML
                3. SimpleXML
                4. Servicios Web
                5. Conectándose con un canal RSS
                6. Mostrando mis fotos de Flickr
                7. Listando mis últimos tweets




Desarrollo web avanzado con PHP5
3.2. Algunos ejemplos de XML




  Un ejemplo sobre películas
  Almacenar en un XML información sobre las películas nominadas a
  los Óscar 2010




Desarrollo web avanzado con PHP 5                     Bloque III: PHP y XML
3.2. Algunos ejemplos de XML


  Un ejemplo sobre películas
  <?xml version='1.0' ?>
  <peliculas>
    <pelicula lang="en">
        <titulo>Avatar</titulo>
        <direccion>
           <director>James Cameron</director>
        </direccion>
     </pelicula>
  </peliculas>



Desarrollo web avanzado con PHP 5           Bloque III: PHP y XML
3.2. Algunos ejemplos de XML


    Un ejemplo sobre películas
   Comprobamos que nuestro XML valida correctamente




   http://www.w3schools.com/xml/xml_validator.asp




Desarrollo web avanzado con PHP 5                     Bloque III: PHP y XML
3.2. Algunos ejemplos de XML

  Un ejemplo sobre recetas
  Almacenar en un XML información sobre recetas de cocina. Cada
  receta de cocina tendrá:
  •   Nombre de la receta
  •   Ingredientes
  •   Tiempo
  •   Nivel (básico, medio o avanzado)
  •   Preparación
  •   Puntuación
                                         Recomendación: http://www.canalcocina.es/


Desarrollo web avanzado con PHP 5                           Bloque III: PHP y XML
Bloque III: PHP y XML
                1. ¿Qué es XML?
                2. Algunos ejemplos de XML
                3. SimpleXML
                4. Servicios Web
                5. Conectándose con un canal RSS
                6. Mostrando mis fotos de Flickr
                7. Listando mis últimos tweets




Desarrollo web avanzado con PHP5
3.3. SimpleXML - Instalación

        <?php echo phpinfo(); ?>




Desarrollo web avanzado con PHP 5   Bloque III: PHP y XML
3.3. SimpleXML


 Un ejemplo sobre películas
   1. Cargar el XML
   (http://dl.dropbox.com/u/8522637/peliculas.xml)
   2. Acceder a todas las películas
   3. Seleccionar una película
   4. Seleccionar los actores de una película
   5. Añadir un actor nuevo a una película
   6. Guardar el XML generado en el archivo

Desarrollo web avanzado con PHP 5                    Bloque III: PHP y XML
3.3. SimpleXML


   El objeto SimpleXMLElement representa cualquier nodo de un archivo
   XML, por tanto el propio XML será un SimpleXMLElement


     $xml = 
     new SimpleXMLElement('peliculas.xml', null, true);

   O bien
     $xml = simplexml_load_file('peliculas.xml');




Desarrollo web avanzado con PHP 5                     Bloque III: PHP y XML
3.3. SimpleXML


   Accedemos a los hijos como si fueran atributos del objeto

   $peliculas = $xml­>pelicula


   Podemos seleccionar un hijo como si fuera un elemento de un array

   $pelicula = $xml­>pelicula[0];




Desarrollo web avanzado con PHP 5                        Bloque III: PHP y XML
3.3. SimpleXML


   Podemos utilizar foreach para recorrer todo un árbol


    foreach( $xml­>pelicula as $pelicula)
    {
       echo $pelicula­>titulo;
    }




Desarrollo web avanzado con PHP 5                         Bloque III: PHP y XML
3.3. SimpleXML


   Permite una interfaz fluido, esto es, cualquier método o atributo
   devuelve un elemento SimpleXML sobre el que podemos volver a
   operar

   $xml­>pelicula[0]
       ­>direccion[0]
       ­>director;




Desarrollo web avanzado con PHP 5                        Bloque III: PHP y XML
3.3. SimpleXML


   También podemos añadir elementos a cualquier nodo


    $direccion = $xml­>pelicula[0]­>direccion[0];

    $direccion­>addChild('director', 'Javi López');




Desarrollo web avanzado con PHP 5                      Bloque III: PHP y XML
3.3. SimpleXML


   Y hasta podemos guardarlo en un archivo


    $xml­>asXML('peliculas.bk.xml');




Desarrollo web avanzado con PHP 5            Bloque III: PHP y XML
3.3. SimpleXML


   Toda la documentación necesaria sobre SimpleXML




    http://php.net/manual/es/book.simplexml.php




Desarrollo web avanzado con PHP 5                    Bloque III: PHP y XML
3.3. SimpleXML


 Un ejemplo sobre recetas de cocina
   1. Cargar el XML
   2. Acceder a todas las recetas
   3. Seleccionar una receta y ver su preparación
   4. Seleccionar una receta y ver sus ingredientes
   5. Añadir una nueva receta
   6. Guardar el XML generado un archivo



Desarrollo web avanzado con PHP 5                     Bloque III: PHP y XML
Bloque III: PHP y XML
                1. ¿Qué es XML?
                2. Algunos ejemplos de XML
                3. SimpleXML
                4. Servicios Web
                5. Conectándose con un canal RSS
                6. Mostrando mis fotos de Flickr
                7. Listando mis últimos tweets




Desarrollo web avanzado con PHP5
3.4. Servicios Web


   Según la wikipedia


    Un servicio web (en inglés, Web service) es un 
    conjunto de protocolos y estándares que sirven para 
    intercambiar datos entre aplicaciones.




Desarrollo web avanzado con PHP 5           Bloque III: PHP y XML
3.4. Servicios Web

   Utilizando XML como servicio web


   Ventajas                            Inconvenientes

   1. Independiente de la plataforma   1. Grado de desarrollo

   2. Basado en un estándar fácil de   2. Rendimiento bajo
   aprender y entender
                                       3. Poco seguro (¿?)
   3. Basado en HTTP




Desarrollo web avanzado con PHP 5                       Bloque III: PHP y XML
3.4. Servicios Web

   Quién esta apostando por servicios web basados en XML




Desarrollo web avanzado con PHP 5                    Bloque III: PHP y XML
Bloque III: PHP y XML
                1. ¿Qué es XML?
                2. Algunos ejemplos de XML
                3. SimpleXML
                4. Servicios Web
                5. Conectándose con un canal RSS
                6. Mostrando mis fotos de Flickr
                7. Listando mis últimos tweets




Desarrollo web avanzado con PHP5
3.5. Conéctandose con un canal RSS


                                                  RSS – Really Simple Sindacation



                                                  Permite la ¿sindicación de
                                                  contenidos?




 La sindicación web (redifusión web) reenvío o reemisión de contenidos desde una fuente original
 (sitio web de origen) hasta otro sitio web de destino (receptor) que a su vez se convierte en emisor
 puesto que pone a disposición de sus usuarios los contenidos a los que en un principio sólo podían
 tener acceso los usuarios del sitio web de origen.




Desarrollo web avanzado con PHP 5                                                   Bloque III: PHP y XML
3.5. Conéctandose con un canal RSS




   Google Reader




Desarrollo web avanzado con PHP 5      Bloque III: PHP y XML
3.5. Conéctandose con un canal RSS




          Un ejemplo: consumiendo un canal RSS




Desarrollo web avanzado con PHP 5           Bloque III: PHP y XML
Bloque III: PHP y XML
                1. ¿Qué es XML?
                2. Algunos ejemplos de XML
                3. SimpleXML
                4. Servicios Web
                5. Conectándose con un canal RSS
                6. Mostrando mis fotos de Flickr
                7. Listando mis últimos tweets




Desarrollo web avanzado con PHP5
Bloque III: PHP y XML
                1. ¿Qué es XML?
                2. Algunos ejemplos de XML
                3. SimpleXML
                4. Servicios Web
                5. Conectándose con un canal RSS
                6. Mostrando mis fotos de Flickr
                7. Listando mis últimos tweets




Desarrollo web avanzado con PHP5

Más contenido relacionado

La actualidad más candente

Adentrándonos al Framework Symfony
Adentrándonos al  Framework SymfonyAdentrándonos al  Framework Symfony
Adentrándonos al Framework SymfonyRodrigo Miranda
 
Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2Edgar Dueñas
 
Symfony2 Formacion y primeros pasos
Symfony2  Formacion y primeros pasosSymfony2  Formacion y primeros pasos
Symfony2 Formacion y primeros pasosSoni BM
 
Symfony2: Framework para PHP5
Symfony2: Framework para PHP5Symfony2: Framework para PHP5
Symfony2: Framework para PHP5Raul Fraile
 
Mi primer programa en Symfony2
Mi primer programa en Symfony2Mi primer programa en Symfony2
Mi primer programa en Symfony2César Hernández
 
Programacion Orientada a Objetos en php
Programacion Orientada a Objetos en phpProgramacion Orientada a Objetos en php
Programacion Orientada a Objetos en phpSamuel Piñon Garcia
 
Symfony2: Interacción con CSS, JS y HTML5
Symfony2: Interacción con CSS, JS y HTML5Symfony2: Interacción con CSS, JS y HTML5
Symfony2: Interacción con CSS, JS y HTML5Raul Fraile
 
desarrolo de sitios web php y mysql
desarrolo de sitios web php y mysqldesarrolo de sitios web php y mysql
desarrolo de sitios web php y mysqlJuan Timoteo Cori
 
Las buenas prácticas oficiales para aplicaciones Symfony
Las buenas prácticas oficiales para aplicaciones SymfonyLas buenas prácticas oficiales para aplicaciones Symfony
Las buenas prácticas oficiales para aplicaciones Symfonysymfony_bcn
 
Iniciación PHP 5. Introducción
Iniciación PHP 5. IntroducciónIniciación PHP 5. Introducción
Iniciación PHP 5. IntroducciónRightster
 
Desarrollo Web Ágil con Symfony, Bootstrap y Angular
Desarrollo Web Ágil con Symfony, Bootstrap y AngularDesarrollo Web Ágil con Symfony, Bootstrap y Angular
Desarrollo Web Ágil con Symfony, Bootstrap y AngularFreelancer
 
Iniciación PHP 5. Ejercicios
Iniciación PHP 5. EjerciciosIniciación PHP 5. Ejercicios
Iniciación PHP 5. EjerciciosRightster
 
Qué puede aprender Drupal de Plone
Qué puede aprender Drupal de PloneQué puede aprender Drupal de Plone
Qué puede aprender Drupal de Plonementtes
 
Elementos sobre Symfony 2.1
Elementos sobre Symfony 2.1Elementos sobre Symfony 2.1
Elementos sobre Symfony 2.1Yaismel Miranda
 
Curso Avanzado PHP para EHU/UPV
Curso Avanzado PHP para EHU/UPVCurso Avanzado PHP para EHU/UPV
Curso Avanzado PHP para EHU/UPVIrontec
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completoAndrés Amaya
 
Presentación de zan php
Presentación de zan phpPresentación de zan php
Presentación de zan phpCarlos Zantana
 
Introducción a PHP - Programador PHP - UGR
Introducción a PHP - Programador PHP - UGRIntroducción a PHP - Programador PHP - UGR
Introducción a PHP - Programador PHP - UGRJuan Belón Pérez
 

La actualidad más candente (20)

Adentrándonos al Framework Symfony
Adentrándonos al  Framework SymfonyAdentrándonos al  Framework Symfony
Adentrándonos al Framework Symfony
 
Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2
 
Symfony2 Formacion y primeros pasos
Symfony2  Formacion y primeros pasosSymfony2  Formacion y primeros pasos
Symfony2 Formacion y primeros pasos
 
Symfony2: Framework para PHP5
Symfony2: Framework para PHP5Symfony2: Framework para PHP5
Symfony2: Framework para PHP5
 
Mi primer programa en Symfony2
Mi primer programa en Symfony2Mi primer programa en Symfony2
Mi primer programa en Symfony2
 
CRUD básico con Symfony
CRUD básico con SymfonyCRUD básico con Symfony
CRUD básico con Symfony
 
Programacion Orientada a Objetos en php
Programacion Orientada a Objetos en phpProgramacion Orientada a Objetos en php
Programacion Orientada a Objetos en php
 
Symfony2: Interacción con CSS, JS y HTML5
Symfony2: Interacción con CSS, JS y HTML5Symfony2: Interacción con CSS, JS y HTML5
Symfony2: Interacción con CSS, JS y HTML5
 
desarrolo de sitios web php y mysql
desarrolo de sitios web php y mysqldesarrolo de sitios web php y mysql
desarrolo de sitios web php y mysql
 
Las buenas prácticas oficiales para aplicaciones Symfony
Las buenas prácticas oficiales para aplicaciones SymfonyLas buenas prácticas oficiales para aplicaciones Symfony
Las buenas prácticas oficiales para aplicaciones Symfony
 
Symfony Parte 2
Symfony Parte 2Symfony Parte 2
Symfony Parte 2
 
Iniciación PHP 5. Introducción
Iniciación PHP 5. IntroducciónIniciación PHP 5. Introducción
Iniciación PHP 5. Introducción
 
Desarrollo Web Ágil con Symfony, Bootstrap y Angular
Desarrollo Web Ágil con Symfony, Bootstrap y AngularDesarrollo Web Ágil con Symfony, Bootstrap y Angular
Desarrollo Web Ágil con Symfony, Bootstrap y Angular
 
Iniciación PHP 5. Ejercicios
Iniciación PHP 5. EjerciciosIniciación PHP 5. Ejercicios
Iniciación PHP 5. Ejercicios
 
Qué puede aprender Drupal de Plone
Qué puede aprender Drupal de PloneQué puede aprender Drupal de Plone
Qué puede aprender Drupal de Plone
 
Elementos sobre Symfony 2.1
Elementos sobre Symfony 2.1Elementos sobre Symfony 2.1
Elementos sobre Symfony 2.1
 
Curso Avanzado PHP para EHU/UPV
Curso Avanzado PHP para EHU/UPVCurso Avanzado PHP para EHU/UPV
Curso Avanzado PHP para EHU/UPV
 
Tutorial de php y my sql completo
Tutorial de php y my sql completoTutorial de php y my sql completo
Tutorial de php y my sql completo
 
Presentación de zan php
Presentación de zan phpPresentación de zan php
Presentación de zan php
 
Introducción a PHP - Programador PHP - UGR
Introducción a PHP - Programador PHP - UGRIntroducción a PHP - Programador PHP - UGR
Introducción a PHP - Programador PHP - UGR
 

Destacado

Iniciación PHP 5. Arquitectura cliente/servidor
Iniciación PHP 5. Arquitectura cliente/servidorIniciación PHP 5. Arquitectura cliente/servidor
Iniciación PHP 5. Arquitectura cliente/servidorRightster
 
Beyond Virtualisation
Beyond VirtualisationBeyond Virtualisation
Beyond VirtualisationRightster
 
Servidor Web Apache, PHP, MySQL.
Servidor Web Apache, PHP, MySQL.Servidor Web Apache, PHP, MySQL.
Servidor Web Apache, PHP, MySQL.Ángel Acaymo M. G.
 
Users - Desarrollo PHP + MySQL
Users - Desarrollo PHP + MySQLUsers - Desarrollo PHP + MySQL
Users - Desarrollo PHP + MySQLAndrés Pizarro
 
Programacion Estructurada en C - Antonakos
Programacion Estructurada en C - AntonakosProgramacion Estructurada en C - Antonakos
Programacion Estructurada en C - AntonakosGustavo Tello Pais
 
Presentación Framework CodeIgniter
Presentación Framework CodeIgniter Presentación Framework CodeIgniter
Presentación Framework CodeIgniter ADWE Team
 
#Mgghub Cookies y privacidad ¿Cumple tu web con la ley?
#Mgghub Cookies y privacidad ¿Cumple tu web con la ley?#Mgghub Cookies y privacidad ¿Cumple tu web con la ley?
#Mgghub Cookies y privacidad ¿Cumple tu web con la ley?madridgeekgirls
 
Metodologia de una tesis1
Metodologia de una tesis1Metodologia de una tesis1
Metodologia de una tesis1emelec2014
 
Comunicaciones electronicas
Comunicaciones electronicasComunicaciones electronicas
Comunicaciones electronicasXavier Ribas
 
Las redes sociales jose luis de la mata
Las redes sociales jose luis de la mataLas redes sociales jose luis de la mata
Las redes sociales jose luis de la mataConfesorAD
 
Procedimiento de notificacion de infracciones a ISP
Procedimiento de notificacion de infracciones a ISPProcedimiento de notificacion de infracciones a ISP
Procedimiento de notificacion de infracciones a ISPXavier Ribas
 
Cookies
CookiesCookies
Cookies1 2d
 
Guía de Cookies (Vídeo)
Guía de Cookies (Vídeo)Guía de Cookies (Vídeo)
Guía de Cookies (Vídeo)Xavier Ribas
 
Propiedad intelectual e Internet - Gigantes o molinos?
Propiedad intelectual e Internet - Gigantes o molinos?Propiedad intelectual e Internet - Gigantes o molinos?
Propiedad intelectual e Internet - Gigantes o molinos?Xavier Ribas
 
Responsabilidad de los Directores de Sistemas
Responsabilidad de los Directores de SistemasResponsabilidad de los Directores de Sistemas
Responsabilidad de los Directores de SistemasXavier Ribas
 

Destacado (20)

Iniciación PHP 5. Arquitectura cliente/servidor
Iniciación PHP 5. Arquitectura cliente/servidorIniciación PHP 5. Arquitectura cliente/servidor
Iniciación PHP 5. Arquitectura cliente/servidor
 
Beyond Virtualisation
Beyond VirtualisationBeyond Virtualisation
Beyond Virtualisation
 
Servidor Web Apache, PHP, MySQL.
Servidor Web Apache, PHP, MySQL.Servidor Web Apache, PHP, MySQL.
Servidor Web Apache, PHP, MySQL.
 
Users - Desarrollo PHP + MySQL
Users - Desarrollo PHP + MySQLUsers - Desarrollo PHP + MySQL
Users - Desarrollo PHP + MySQL
 
Programacion Estructurada en C - Antonakos
Programacion Estructurada en C - AntonakosProgramacion Estructurada en C - Antonakos
Programacion Estructurada en C - Antonakos
 
MVC
MVCMVC
MVC
 
Febrero 2009 - Presentación PFC AGritos!
Febrero 2009 - Presentación PFC AGritos!Febrero 2009 - Presentación PFC AGritos!
Febrero 2009 - Presentación PFC AGritos!
 
Presentación Framework CodeIgniter
Presentación Framework CodeIgniter Presentación Framework CodeIgniter
Presentación Framework CodeIgniter
 
#Mgghub Cookies y privacidad ¿Cumple tu web con la ley?
#Mgghub Cookies y privacidad ¿Cumple tu web con la ley?#Mgghub Cookies y privacidad ¿Cumple tu web con la ley?
#Mgghub Cookies y privacidad ¿Cumple tu web con la ley?
 
Metodologia de una tesis1
Metodologia de una tesis1Metodologia de una tesis1
Metodologia de una tesis1
 
Comunicaciones electronicas
Comunicaciones electronicasComunicaciones electronicas
Comunicaciones electronicas
 
Web Analytics | Clase 1/4
Web Analytics | Clase 1/4Web Analytics | Clase 1/4
Web Analytics | Clase 1/4
 
Las redes sociales jose luis de la mata
Las redes sociales jose luis de la mataLas redes sociales jose luis de la mata
Las redes sociales jose luis de la mata
 
Procedimiento de notificacion de infracciones a ISP
Procedimiento de notificacion de infracciones a ISPProcedimiento de notificacion de infracciones a ISP
Procedimiento de notificacion de infracciones a ISP
 
Cookies
CookiesCookies
Cookies
 
Cookies: ¿Cómo funcionan?
Cookies: ¿Cómo funcionan?Cookies: ¿Cómo funcionan?
Cookies: ¿Cómo funcionan?
 
Guía de Cookies (Vídeo)
Guía de Cookies (Vídeo)Guía de Cookies (Vídeo)
Guía de Cookies (Vídeo)
 
Propiedad intelectual e Internet - Gigantes o molinos?
Propiedad intelectual e Internet - Gigantes o molinos?Propiedad intelectual e Internet - Gigantes o molinos?
Propiedad intelectual e Internet - Gigantes o molinos?
 
PHP: Sesiones
PHP: SesionesPHP: Sesiones
PHP: Sesiones
 
Responsabilidad de los Directores de Sistemas
Responsabilidad de los Directores de SistemasResponsabilidad de los Directores de Sistemas
Responsabilidad de los Directores de Sistemas
 

Similar a PHP XML SimpleXML (20)

Frameworks de templates y xml
Frameworks de templates y xmlFrameworks de templates y xml
Frameworks de templates y xml
 
Curso iniciacion-joomla-3.3-oklan
Curso iniciacion-joomla-3.3-oklanCurso iniciacion-joomla-3.3-oklan
Curso iniciacion-joomla-3.3-oklan
 
Materiales del curso de Symfony2
Materiales del curso de Symfony2Materiales del curso de Symfony2
Materiales del curso de Symfony2
 
Elementos de html5 y css3
Elementos de html5 y css3Elementos de html5 y css3
Elementos de html5 y css3
 
Dale Stamina A Tu Flex App Con Amfphp
Dale Stamina A Tu Flex App Con AmfphpDale Stamina A Tu Flex App Con Amfphp
Dale Stamina A Tu Flex App Con Amfphp
 
Joomla Curso Noviembre
Joomla Curso NoviembreJoomla Curso Noviembre
Joomla Curso Noviembre
 
Joomla! Curso Noviembre
Joomla! Curso NoviembreJoomla! Curso Noviembre
Joomla! Curso Noviembre
 
Joomla Curso Noviembre
Joomla Curso NoviembreJoomla Curso Noviembre
Joomla Curso Noviembre
 
Html5
Html5Html5
Html5
 
Integrando Flex Y Spring
Integrando Flex  Y SpringIntegrando Flex  Y Spring
Integrando Flex Y Spring
 
4 Guia Xhtm Lv2.1
4   Guia Xhtm Lv2.14   Guia Xhtm Lv2.1
4 Guia Xhtm Lv2.1
 
Curso Mu
Curso MuCurso Mu
Curso Mu
 
Joomladay Mallorca 2010 Templates Workshop
Joomladay Mallorca 2010 Templates WorkshopJoomladay Mallorca 2010 Templates Workshop
Joomladay Mallorca 2010 Templates Workshop
 
Semana 2 Arquitectura web y HTML 5
Semana 2   Arquitectura web y HTML 5Semana 2   Arquitectura web y HTML 5
Semana 2 Arquitectura web y HTML 5
 
Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...
Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...
Joomla!Day 2011 España - Taller desarrollo de plantillas Joomla! - Sergio Igl...
 
Luis html
Luis htmlLuis html
Luis html
 
Presentación1
Presentación1Presentación1
Presentación1
 
Introducción a php
Introducción a phpIntroducción a php
Introducción a php
 
Introducción a PHP5
Introducción a PHP5Introducción a PHP5
Introducción a PHP5
 
Tema4.pdf
Tema4.pdfTema4.pdf
Tema4.pdf
 

Último

El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramDIDIERFERNANDOGUERRE
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 

Último (20)

El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
Explorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ramExplorando la historia y funcionamiento de la memoria ram
Explorando la historia y funcionamiento de la memoria ram
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 

PHP XML SimpleXML

  • 1. Bloque III: PHP y XML 1. ¿Qué es XML? 2. Algunos ejemplos de XML 3. SimpleXML 4. Servicios Web 5. Conectándose con un canal RSS 6. Mostrando mis fotos de Flickr 7. Listando mis últimos tweets Desarrollo web avanzado con PHP5
  • 2. Bloque III: PHP y XML 1. ¿Qué es XML? 2. Algunos ejemplos de XML 3. SimpleXML 4. Servicios Web 5. Conectándose con un canal RSS 6. Mostrando mis fotos de Flickr 7. Listando mis últimos tweets Desarrollo web avanzado con PHP5
  • 3. 3.1. ¿Qué es XML? <?xml version=” 1.0” encoding=” utf-8” ? > <mensaje>Hola Mundo</mensaje> Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 4. 3.1. ¿Qué es XML? eXtensible Markup Language XML es un lenguaje de etiquetas, como HTML XML está diseñado para transportar información, no para mostrarla XML no tiene etiquetas predefinidas. Tú puedes definir las tuyas XML está diseñado para ser auto-explicativo XML es una recomendación del W3C XML no hace nada Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 5. 3.1. ¿Qué es XML? Definición del tipo de documento Tiene que ser la primera línea del documento <?xml version=” 1.0” encoding=” utf-8” ? > Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 6. 3.1. ¿Qué es XML? Elementos XML XML es case-sensitive <mensaje>Hola Mundo</mensaje> Es distinto de <Mensaje>Hola Mundo</Mensaje> Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 7. 3.1. ¿Qué es XML? Elementos XML El nombre de un elemento 1. Puede contener letras, números, puntos, dos puntos y acentos 2. Sólo pueden empezar por letras 3. No pueden empezar con las letras XML (o xml, o Xml, …) 4. No pueden contener espacios en blanco Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 8. 3.1. ¿Qué es XML? Elementos XML Todas las etiquetas tienes que estar debidamente cerradas <mensaje>Hola Mundo</mensaje> O si tienen ningún contenido <Mensaje /> Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 9. 3.1. ¿Qué es XML? Elementos XML Cualquier XML tiene uno y solo un elemento raíz <?xml version=” 1.0” ?> <?xml version=” 1.0” ?> <peliculas> <pelicula> <pelicula> Avatar Avatar </pelicula> </pelicula> <pelicula> <pelicula> Distrito 9 Distrito 9 </pelicula> </pelicula> </peliculas> Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 10. 3.1. ¿Qué es XML? Elementos XML Los elementos deben estar correctamente anidados <peliculas> <pelicula> <directores> <director>James Cameron</director> </directores> </pelicula> </peliculas> Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 11. 3.1. ¿Qué es XML? Atributos XML Normalmente son utilizados para almacenar metainformación del elemento <mensaje lang=” es” >Hola Mundo</mensaje> Podemos usar tanto comillas simples como dobles <mensaje lang='es' >Hello World</mensaje> Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 12. 3.1. ¿Qué es XML? Espacios en blanco Se entiende por “espacio en blanco” saltos de carros, sangrados, tabulaciones y por supuesto, un espacio Son obligatorios para separar el nombre de un atributo del nombre del elemento Son aconsejados para permitir una mejor lectura del documento (tabulaciones para indicar anidaciones) Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 13. 3.1. ¿Qué es XML? Espacios en blanco < mensaje lang=” es” >Hola Mundo</mensaje > Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 14. 3.1. ¿Qué es XML? Espacios en blanco <peliculas><pelicula><directores> <director>James Cameron</director> </directores></pelicula></peliculas> Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 15. 3.1. ¿Qué es XML? XML válidos y bien formados XML bien formados – cumplen con las reglas del W3C http://www.w3schools.com/XML/xml_validator.asp XML válidos – cumplen con las especificaciones de un DTD o Schema Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 16. 3.1. ¿Qué es XML? El ecosistema XML DTD Namespaces Document Type Definition Schema XML XForms XPath XSLT Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 17. Bloque III: PHP y XML 1. ¿Qué es XML? 2. Algunos ejemplos de XML 3. SimpleXML 4. Servicios Web 5. Conectándose con un canal RSS 6. Mostrando mis fotos de Flickr 7. Listando mis últimos tweets Desarrollo web avanzado con PHP5
  • 18. 3.2. Algunos ejemplos de XML Un ejemplo sobre películas Almacenar en un XML información sobre las películas nominadas a los Óscar 2010 Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 19. 3.2. Algunos ejemplos de XML Un ejemplo sobre películas <?xml version='1.0' ?> <peliculas>   <pelicula lang="en"> <titulo>Avatar</titulo> <direccion> <director>James Cameron</director> </direccion> </pelicula> </peliculas> Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 20. 3.2. Algunos ejemplos de XML Un ejemplo sobre películas Comprobamos que nuestro XML valida correctamente http://www.w3schools.com/xml/xml_validator.asp Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 21. 3.2. Algunos ejemplos de XML Un ejemplo sobre recetas Almacenar en un XML información sobre recetas de cocina. Cada receta de cocina tendrá: • Nombre de la receta • Ingredientes • Tiempo • Nivel (básico, medio o avanzado) • Preparación • Puntuación Recomendación: http://www.canalcocina.es/ Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 22. Bloque III: PHP y XML 1. ¿Qué es XML? 2. Algunos ejemplos de XML 3. SimpleXML 4. Servicios Web 5. Conectándose con un canal RSS 6. Mostrando mis fotos de Flickr 7. Listando mis últimos tweets Desarrollo web avanzado con PHP5
  • 23. 3.3. SimpleXML - Instalación <?php echo phpinfo(); ?> Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 24. 3.3. SimpleXML Un ejemplo sobre películas 1. Cargar el XML (http://dl.dropbox.com/u/8522637/peliculas.xml) 2. Acceder a todas las películas 3. Seleccionar una película 4. Seleccionar los actores de una película 5. Añadir un actor nuevo a una película 6. Guardar el XML generado en el archivo Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 25. 3.3. SimpleXML El objeto SimpleXMLElement representa cualquier nodo de un archivo XML, por tanto el propio XML será un SimpleXMLElement $xml =  new SimpleXMLElement('peliculas.xml', null, true); O bien $xml = simplexml_load_file('peliculas.xml'); Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 26. 3.3. SimpleXML Accedemos a los hijos como si fueran atributos del objeto $peliculas = $xml­>pelicula Podemos seleccionar un hijo como si fuera un elemento de un array $pelicula = $xml­>pelicula[0]; Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 27. 3.3. SimpleXML Podemos utilizar foreach para recorrer todo un árbol foreach( $xml­>pelicula as $pelicula) { echo $pelicula­>titulo; } Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 28. 3.3. SimpleXML Permite una interfaz fluido, esto es, cualquier método o atributo devuelve un elemento SimpleXML sobre el que podemos volver a operar $xml­>pelicula[0]     ­>direccion[0]     ­>director; Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 29. 3.3. SimpleXML También podemos añadir elementos a cualquier nodo $direccion = $xml­>pelicula[0]­>direccion[0]; $direccion­>addChild('director', 'Javi López'); Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 30. 3.3. SimpleXML Y hasta podemos guardarlo en un archivo $xml­>asXML('peliculas.bk.xml'); Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 31. 3.3. SimpleXML Toda la documentación necesaria sobre SimpleXML http://php.net/manual/es/book.simplexml.php Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 32. 3.3. SimpleXML Un ejemplo sobre recetas de cocina 1. Cargar el XML 2. Acceder a todas las recetas 3. Seleccionar una receta y ver su preparación 4. Seleccionar una receta y ver sus ingredientes 5. Añadir una nueva receta 6. Guardar el XML generado un archivo Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 33. Bloque III: PHP y XML 1. ¿Qué es XML? 2. Algunos ejemplos de XML 3. SimpleXML 4. Servicios Web 5. Conectándose con un canal RSS 6. Mostrando mis fotos de Flickr 7. Listando mis últimos tweets Desarrollo web avanzado con PHP5
  • 34. 3.4. Servicios Web Según la wikipedia Un servicio web (en inglés, Web service) es un  conjunto de protocolos y estándares que sirven para  intercambiar datos entre aplicaciones. Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 35. 3.4. Servicios Web Utilizando XML como servicio web Ventajas Inconvenientes 1. Independiente de la plataforma 1. Grado de desarrollo 2. Basado en un estándar fácil de 2. Rendimiento bajo aprender y entender 3. Poco seguro (¿?) 3. Basado en HTTP Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 36. 3.4. Servicios Web Quién esta apostando por servicios web basados en XML Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 37. Bloque III: PHP y XML 1. ¿Qué es XML? 2. Algunos ejemplos de XML 3. SimpleXML 4. Servicios Web 5. Conectándose con un canal RSS 6. Mostrando mis fotos de Flickr 7. Listando mis últimos tweets Desarrollo web avanzado con PHP5
  • 38. 3.5. Conéctandose con un canal RSS RSS – Really Simple Sindacation Permite la ¿sindicación de contenidos? La sindicación web (redifusión web) reenvío o reemisión de contenidos desde una fuente original (sitio web de origen) hasta otro sitio web de destino (receptor) que a su vez se convierte en emisor puesto que pone a disposición de sus usuarios los contenidos a los que en un principio sólo podían tener acceso los usuarios del sitio web de origen. Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 39. 3.5. Conéctandose con un canal RSS Google Reader Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 40. 3.5. Conéctandose con un canal RSS Un ejemplo: consumiendo un canal RSS Desarrollo web avanzado con PHP 5 Bloque III: PHP y XML
  • 41. Bloque III: PHP y XML 1. ¿Qué es XML? 2. Algunos ejemplos de XML 3. SimpleXML 4. Servicios Web 5. Conectándose con un canal RSS 6. Mostrando mis fotos de Flickr 7. Listando mis últimos tweets Desarrollo web avanzado con PHP5
  • 42. Bloque III: PHP y XML 1. ¿Qué es XML? 2. Algunos ejemplos de XML 3. SimpleXML 4. Servicios Web 5. Conectándose con un canal RSS 6. Mostrando mis fotos de Flickr 7. Listando mis últimos tweets Desarrollo web avanzado con PHP5