Ayuda para configurar PHP SimpleXML

Tengo problemas para que SimpleXML de PHP funcione con nuestro Feed XML. Solo llamo al atributo de título para simplificarlo. Cuando ejecuto cualquiera de este código, solo exporta etiquetas h3 vacías. Cualquier ayuda es muy apreciada.

He intentado esto:

        <?php
        $xml = simplexml_load_file('http://events.stanford.edu/xml/mobile.xml');

        foreach($xml as $event){
            echo '<h3>', $event['title'], '</h3>';
        }

        ?>

...y esto:

        <?php
        $xml = simplexml_load_file('http://events.stanford.edu/xml/mobile.xml');

        foreach($xml->Event as $event){
            echo '<h3>', $event['title'], '</h3>';
        }

        ?>

...y esto:

        <?php
        $xml = simplexml_load_file('http://events.stanford.edu/xml/mobile.xml');

        foreach($xml as $node){
            echo '<h3>', $node['title'], '</h3>';
        }

        ?>

preguntado el 16 de mayo de 11 a las 17:05

2 Respuestas

<?php
    $xml = simplexml_load_file('http://events.stanford.edu/xml/mobile.xml');

    foreach($xml->Event as $event){
        echo '<h3>', $event->title, '</h3>';
    }

    ?>

contestado el 16 de mayo de 11 a las 21:05

Y para aclarar ... el acceso a la matriz [y] es para atributos, el acceso a la propiedad (->) es para elementos. El título es un elemento, no una propiedad. - Evert

Estás usando el objeto $event como una matriz, que no funciona, haga lo que dicen las otras respuestas y haga referencia a ella como un objeto ($event->title) o convertirlo en una matriz (¿emitir? ((array)$event)['title']. Sugeriría el primero.

Siento que estás acostumbrado a los objetos javascript que se pueden indexar como tablas hash, mientras que en PHP las matrices son completamente diferentes a los objetos.

contestado el 16 de mayo de 11 a las 22:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.