Sidebar

Fernando Softov | PHP: lendo e tratando informações vindas de um arquivo XML
105
post-template-default,single,single-post,postid-105,single-format-standard,ajax_fade,page_not_loaded,smooth_scroll,boxed,wpb-js-composer js-comp-ver-3.6.12,vc_responsive

PHP: lendo e tratando informações vindas de um arquivo XML

Não sou muito ativo no php, sou mais um web-designer, mas como sou um desenvolvedor web e trabalho sozinho nesta área, tenho que me virar procurando certos problemas na web (google).

Estes dias estava com dificuldade em ler um XML, de tanto procurar na web encontrei este blog:

http://www.vedovelli.com.br/?p=83

Resolvi compartilhar para ajudar quem tem ou terá o mesmo problema que eu tive. Modifiquei certas coisas, comentei e postei aqui, espero que tenham facilidade em entender o Post!, qualquer duvida comentem.

<?xml version="1.0" encoding="UTF-8"?>
<root>
<bandas>
<nome>Asian Dub Foundation</nome>
<nome>REM</nome>
<nome>Everything But The Girl</nome>
</bandas>
</root>

O xml é o mesmo do exemplo do blog que eu copiei.

Agora temos o php que lerá o XML acima


<?php
$xml = simplexml_load_file("arquivo.xml"); // Pode ser http://www.algumdominio.com/services/arquivo.xml

for($i=0; $i < count($xml->bandas->nome); $i++) {
 echo $xml->bandas->nome[$i]."<br />";
}
?>

Para outro exemplo tenho o XML abaixo


<?xml version="1.0" encoding="UTF-8"?>
<root>
<bandas>
Gringas
<nome>Asian Dub Foundation</nome>
<nome>REM</nome>
<nome>Everything But The Girl</nome>
</bandas>

<bandas>
Da nossa Terra
<nome>Detonautas</nome>
<nome>CPM 22</nome>
<nome>Skank</nome>
</bandas>
</root>

E o php que faz a leitura


<?php
// lê o arquivo xml
$xml = simplexml_load_file("arquivo2.xml");

// le todos os filhos pricipais - no caso "bandas"
foreach($xml->children() as $child){
 // imprime o texto interno
 echo "<br /><br /><strong>".$child.":</strong> <br />";

 // le todos os of filhos dos filhos pricipais - no caso "nome"
 foreach($child as $asd){
 // imprime o texto interno
 echo "" . $asd . "<br />";
 }
}

// foreach - enquanto tem dados ele lê
// pelo menos é isso que eu entendo
?>

Neste segundo exemplo eu leio o XML, e para cada filho leio seus filhos. Assim tenho o filho “bandas” e seus filhos “nome”.

Os exemplos podem ser vistos aqui.

TAGS

AUTHOR - admin

No Comment

0

Post A Comment