Os dados que serão incluídos no banco estão no formato XML (eXtensible Markup Language), o que de certa forma já facilita na inserção dos dados. No meu caso apenas necessito saber quais os títulos das revistas e dos artigos escritos, e , o nome dos autores. Dessa forma, para acelerar o processo implementei o seguinte script, que varre todo o arquivo XML, e, retorna os três elementos desejados.
O código foi escrito em PHP.
<?php
$xml = simplexml_load_file("teste-01-database.xml");
#var_dump($xml);
$pesquisadores = $xml->pesquisador;
$countPesquisador = $pesquisadores->count();
$countArtigo = $pesquisadores->artigos_em_periodicos->artigo->count();
echo "Número total de pesquisadores: ".$countPesquisador;
foreach ($pesquisadores as $pesquisador) {
# code...
echo "
"."Nome do pesquisador: ".$pesquisador->identificacao->nome_completo;
if(isset($pesquisador->artigos_em_periodicos)){
echo "
"."Quantidade de artigos em períodicos: ".$pesquisador->artigos_em_periodicos->artigo->count();
foreach ($pesquisador->artigos_em_periodicos->artigo as $artigo) {
# code...
echo "Titulo Artigo: ".$artigo->titulo;
echo "Titulo Revista: ".$artigo->revista;
}
}
if(isset($pesquisador->artigos_em_revista)){
echo "
"."Quantidade de artigos em revista: ".$pesquisador->artigos_em_revista->artigo->count();
foreach ($pesquisador->artigos_em_revista as $artigo_revista) {
# code...
echo "Titulo Artigo: ".$artigo->titulo;
echo "Titulo Revista: ".$artigo->revista;
}
}
else if(isset($pesquisador->artigos_em_periodicos) and isset($pesquisador->artigos_em_revista)){
echo "
"."Quantidade de artigos em períodicos: ".$pesquisador->artigos_em_periodicos->artigo->count();
foreach ($pesquisador->artigos_em_periodicos->artigo as $artigo) {
# code...
echo "Titulo Artigo: ".$artigo->titulo;
echo "Titulo Revista: ".$artigo->revista;
}
echo "
"."Quantidade de artigos em revista: ".$pesquisador->artigos_em_revista->artigo->count();
foreach ($pesquisador->artigos_em_revista as $artigo_revista) {
# code...
echo "Titulo Artigo: ".$artigo->titulo;
echo "Titulo Revista: ".$artigo->revista;
}
}
}
?>
;-)
Nenhum comentário:
Postar um comentário