繁体   English   中英

XML解析需要PHP的帮助

[英]XML parsing need help on PHP

我有用于解析XML的家庭作业,这是xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
 <array>
  <dict>
   <key>code</key>
   <string>27</string>
   <key>programname</key>
   <string>Anında İstek Hattı</string>
   <key>programmername</key>
   <string>Selma Akbaş</string>
   <key>avatar</key>
   <string>selma-akbas-11.jpg</string>
  </dict>
  <dict>
   <key>code</key>
   <string>16</string>
   <key>programname</key>
   <string>Beyaz Gece</string>
   <key>programmername</key>
   <string>Okan Karakoca</string>
   <key>avatar</key>   
   <string>okan-karakoca-7.jpg</string>
  </dict>
 </array>
</plist>

我尝试用以下代码解析:

<?php
Header('charset=utf-8');
  $test = simplexml_load_file('programlar.xml');
    foreach ($test->array as $ar) {
      foreach ($ar->dict as $dict) {
        echo($dict->key);
        echo "<br/>";
        echo($dict->string);
        echo "<br/>";
      }
    }
?>

解析已完成,但是会出现一些错误。 它仅显示每个字典的第一个键字符串

有人可以解决此代码吗? 谢谢

<?php
Header('charset=utf-8');
$test = simplexml_load_file('programlar.xml');
foreach ($test->array as $ar) {
    foreach ($ar->dict as $dict) {
        for ($i = 0; $i < count($dict->key); $i++) {
            echo $dict->key[$i].'<br />';
            echo $dict->string[$i].'<br />';

    }
}
?>

我认为这应该有效。 在哈哈打开它之前,请确保您了解这里发生的情况。 我使用数组样式索引键遍历“键”和“字符串”对,基本上将两个节点集视为数组。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM