Frederico R Martins Blog

Archive for the ‘Tutoriais’ Category

Boa Noite pessoal!

Demorei um pouco para escrever aqui pois estou um pouco enrolado em um projeto de website grande e estou tendo que correr um pouco para coloca-lo logo no ar. Não que eu esteja atrasado, mas enfim, não vem ao caso.. rs

Voltando ao assunto… hoje passei por uma necessidade “boba” que era de ler um arquivo xml e escreve-lo em algum formato. Perdi um bom tempo na web procurando por alguma solução boa. E depois de algumas horas de dedicação eu achei um solução muito boa e dei minhas adaptadas.

Bom vamos lá!

<?xml version="1.0" encoding="ISO-8859-1" ?>
<biblioteca>
      <livros>
         <titulo>Fazendo Blogs</titulo>
         <autor>José das Couves</autor>
         <editora>Editora Ética</editora>
         <sinopse>lalalalalalalaalalalala</sinopse>
      </livros>
</biblioteca>

Analisando o XML:
Na primeira linha temos o tipo de caracteres e a codificação utilizada pelo xml que é o ISO, que é o nosso padrão de acentos.

Na segunda linha temos a abertura do nosso banco de dados, que é o nosso elemento principal responsável por organizar os nossos dados.

Na terceira linha, a linha do
, nela nos abrimos os campos andos os nossos dados do banco de dados estaram armazenados. Logo as tags que estão dentro dela são as tags aonde o dados estão efetivamente. Nome para o nome, Titulo para o titulo e assim por diante.

Agora vamos fazer o nosso código php para ler esse xml que acabamos de criar.

//Aqui ele vai ler o arquivo do xml
$xml = simplexml_load_file("caminho_para_o_xml.xml");

//Para cada tag livros, ou seja, para cada conjunto de dados faça isso...
foreach($xml->livros as $livro)
{
  //Caso não tenha sinopse do livro.
  if($livro ->sinopse ==""){
    echo $livro->titulo.' - '.$livro->autor.' - '.$livro->editora.'<br\>';
  }
  else
  {
    echo $livro->titulo.' - '.$livro->autor.' - '.$livro->editora.'<br\>';
    echo 'Sinopse: '.$livro->sinopse;
  }
}

Bom como o próprio código já está descrevendo na primeira linha você lê o arquivo xml por inteiro. Na linha do foreach você está dizendo que para cada linha que tenha a tag livros faça o que está descrito dentro da cláusula.

Aquele IF serve para não imprimir a cláusula sinopse caso ela seja vazia, pois se você deixar ela escrever sendo vazia dá erro de execução no php.

Bom estou chegando ao final do meu primeiro e pequeno tutorial, espero que vocês tenham gostado e que isso seja muito útil para todos.

Nota: Esse código que eu passei pode ser utilizado em uma function, sinceramente eu ate prefiro. Utilizei esse código dentro de uma function no Delphi+php e coloquei juntamente com o Smarty Template. Ficou um resultado bem bacana. Em breve estarei postando aqui no blog quando o site ficar pronto.

Bookmark and Share
Anúncios

Arquivos

Twitando

Meus últimos bookmarks

RSS IDG Now!

  • Ocorreu um erro. É provável que o feed esteja indisponível. Tente mais tarde.