Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在运行时在php服务器中生成XML文件_Php_Xml_Phpmyadmin_Domparser - Fatal编程技术网

如何在运行时在php服务器中生成XML文件

如何在运行时在php服务器中生成XML文件,php,xml,phpmyadmin,domparser,Php,Xml,Phpmyadmin,Domparser,当我运行该程序时,我使用了下面的流上堆栈链接代码,服务器在第24行第4列有错误。我不理解这样的错误:“不匹配的XML标记”请检查这个。代码如下: <?xml version="1.0" encoding="UTF-8"?> <xml> <track> <path>song1.mp3</path> <title>Track 1 - Track Title</title> </track

当我运行该程序时,我使用了下面的流上堆栈链接代码,服务器在第24行第4列有错误。我不理解这样的错误:“不匹配的XML标记”请检查这个。代码如下:

<?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>
</xml>

歌曲1.mp3
曲目1-曲目标题
歌曲2.mp3
曲目2-曲目标题
歌曲3.mp3
曲目3-曲目标题
歌曲4.mp3
曲目4-曲目标题
歌曲5.mp3
曲目5-曲目标题
歌曲6.mp3
曲目6-曲目标题
歌曲7.mp3
曲目7-曲目标题
歌曲8.mp3
曲目8-曲目标题
我想使用以下PHP代码:

<?php

  // Send the headers
  header('Content-type: text/xml');
  header('Pragma: public');
  header('Cache-control: private');
  header('Expires: -1');

  echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
  echo '<xml>';

  // echo some dynamically generated content here

  /*
     <track>
        <path>song_path</path>
        <title>track_number - track_title</title>
     </track>
  */

  echo '</xml>';

?>

我很确定您的错误来自于使用
作为实体,看看这个工作示例,希望它能有所帮助

<?php 
header('Content-type: text/xml');

echo '<?xml version="1.0" encoding="UTF-8"?>
<tracks>
    <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>
</tracks>';
?> 


第24行错误是结束标记的最后一个错误。我更正了此错误,但没有解决错误。我不明白如何回显动态生成的代码行。请告诉我该行中的内容。@HinaSiddiqui您从哪里获取数据?e、 数据库、磁盘上的文件、循环目录等等。我不认为你已经完全描述了你的情况。你到底想干什么?您正在尝试从第二个文件生成第一个文件吗?如果是这样,您肯定需要更多的代码-->循环结构。当用户登录到登录页面并单击submit按钮时,我使用了数据库MySQL中的数据,它将通过XML字符串显示一条消息“tour account通过XML标记成功创建了”。为什么在本节末尾使用单引号和分号xml@HinaSiddiqui我不明白你的意思。。
与php部分无关,我使用了单引号,因为它避免了在xml声明中转义双引号。