我无法从xml文件中获取数据

时间:2015-02-09 09:58:44

标签: php html xml

请仔细阅读,感谢您的帮助和解答。

我的代码是从xml获取数据并显示但是它的工作只在我的categories.xml上,而不在我的products.xml上。

这是我的categories.xml结构:

 <?xml version="1.0"?>
<categories>
<category>
<categories_name>name</categories_name>
<sort_order>order number</sort_order>
</category>
<category>
<categories_name>name</categories_name>
<sort_order>order number</sort_order>
 </category>
</categories>

和我使用的代码

<?php
$xml=simplexml_load_file("categories.xml") or die("Error: Cannot create object");
foreach ($xml->children() as $category): ?>
    <div class="product">
            <img src="<?= $category->categories_name; ?>"><br>
            <?= $category->sort_order; ?>
    </div>
<?php endforeach; ?>

它的工作完美。

但是当我在products.xml上尝试使用此代码时,它显示为空白。这是我的products.xml:

<TABLE-RECORDS>
<EXPORT-RECORDS>
<PRODUCT>
  <PRODUCTS_NAME>name </PRODUCTS_NAME>
  <PRODUCTS_DESCRIPTION>details</PRODUCTS_DESCRIPTION>
  <PRODUCTS_IMAGE>number</PRODUCTS_IMAGE>
  <PRODUCTS_PRICE>$</PRODUCTS_PRICE>
</PRODUCT>
<PRODUCT>
  <PRODUCTS_NAME>name </PRODUCTS_NAME>
  <PRODUCTS_DESCRIPTION>details</PRODUCTS_DESCRIPTION>
  <PRODUCTS_IMAGE>number</PRODUCTS_IMAGE>
  <PRODUCTS_PRICE>$</PRODUCTS_PRICE>
</PRODUCT>
</EXPORT-RECORDS>
</TABLE-RECORDS>

这里是用于获取的PHP代码:

<?php $xml=simplexml_load_file("products.xml") or die("Error: Cannot create object"); 
foreach ($xml->children() as $product): ?>
    <div class="product">
            <?= $product->PRODUCTS_NAME; ?>
    </div>

我想我在TABLE-RECORDS上遇到错误。 我检查了很多次,但我没有取任何东西......它显示了一个空白页面。

1 个答案:

答案 0 :(得分:1)

我想你忘了找到子孩子,你能试试吗

<?php $xml=simplexml_load_file("products.xml") or die("Error: Cannot create object"); 
foreach ($xml->children()->children() as $product): ?>
  <div class="product">
    <?= $product->PRODUCTS_NAME; ?>
  </div>
}
相关问题