Eu tenho que gerar um arquivo xml dinamicamente em tempo de execução. Por favor me ajude a gerar o arquivo XML abaixo dinamicamente usando PHP.
<?xml version="1.0" encoding="UTF-8"?>
<xml>
<track>
<path>song1.mp3</path>
<title>Track 1 - Track Title</title>
</track>
<track>
<path>song2.mp3</path>
<title>Track 2 - Track Title</title>
</track>
<track>
<path>song3.mp3</path>
<title>Track 3 - Track Title</title>
</track>
<track>
<path>song4.mp3</path>
<title>Track 4 - Track Title</title>
</track>
<track>
<path>song5.mp3</path>
<title>Track 5 - Track Title</title>
</track>
<track>
<path>song6.mp3</path>
<title>Track 6 - Track Title</title>
</track>
<track>
<path>song7.mp3</path>
<title>Track 7 - Track Title</title>
</track>
<track>
<path>song8.mp3</path>
<title>Track 8 - Track Title</title>
</track>
Respostas:
Eu usaria SimpleXMLElement .
fonte
<?xml version="1.0" encoding="WHATEVER_IT_IS"?>
instrução de processamento. Acredito que o SimpleXMLElement fará a coisa certa: converter todos os valores de string consultados em seu mb_internal_encoding.$xml = new SimpleXMLElement("<?xml version=\"1.0\" encoding=\"utf-8\" ?><Person></Person>");
Para criar um XMLdocument no PHP, instale uma classe DOMDocument, crie nós filhos e acrescente esses nós na ramificação correta da árvore de documentos.
Para referência, você pode ler http://it.php.net/manual/en/book.dom.php
Agora faremos um rápido tour pelo código abaixo.
Estes são os princípios básicos: você pode criar e anexar um nó em apenas uma linha (13ª, por exemplo); você pode fazer muitas outras coisas com a dom api. É com você.
Edit: Apenas mais uma dica: A principal vantagem de usar um xmldocument (o documento dom ou o simplexml) em vez de imprimir o xml é que o xmltree é pesquisável com a consulta xpath
fonte
$domtree->save('mypath/xmlfile.xml');
?$domtree->formatOutput = true;
para fazer a saída pretty :)Content-Disposition: attachment
e ae imprima o resultado saveXml. Você também pode sugerir um nome de arquivo.Uma maneira fácil de quebrar isso é:
salve-o como .php
fonte
Com o FluidXML, você pode gerar seu XML com muita facilidade.
https://github.com/servo-php/fluidxml
fonte
Dê uma olhada no sistema de modelagem Tiny But Strong . Geralmente é usado para modelar HTML, mas há uma extensão que funciona com arquivos XML. Eu uso isso extensivamente para criar relatórios nos quais posso ter um arquivo de código e dois arquivos de modelo - htm e xml - e o usuário pode optar por enviar um relatório para a tela ou planilha.
Outra vantagem é que você não precisa codificar o xml do zero; em alguns casos, eu queria exportar planilhas complexas muito grandes e, em vez de precisar codificar toda a exportação, tudo o que é necessário é salvar uma planilha existente no xml e substitua nas tags de código em que a saída de dados é necessária. É uma maneira rápida e muito eficiente de trabalhar.
fonte
É simples, basta conectar-se ao seu banco de dados, ele criará o arquivo test.xml na pasta do seu projeto
fonte