2015-02-09 27 views
0

请仔细阅读,我很感谢您的帮助和解答。我无法从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> 

我想我的表-RECORDS得到错误。 我查了很多次,但没有取任何东西......它显示了我一个空白页。

回答

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> 
} 
+1

OMG我怎么能忘记这个笑:P:d我正在这一夜我想我需要休息一下谢谢这么多:P:D 新鲜头脑得到新鲜的想法的:) – 2015-02-09 10:52:50