php通过simplexml无法读取xml内的数据。。。纯菜鸟学习,少拍我哈。。
一个product.xml文档,内容为:(类似的item条目有多个)
<?xml version="1.0" encoding="UTF-8"?>
<product>
<item>
<name>product1</name>
<picurl>images/product.jpg</picurl>
<discription>discription...discription...</discription>
</item>
</product>
调用数据的PHP文档内容为
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<?php
$xml=simplexml_load_file("products.xml");
$part=$xml->product->item;
$k=0;
while($k<12){
echo "<dl ><dt>".$part[$k]->name."</dt><dd><a href='".$part[$k]->link."' target='_blank'><img src='".$part[$k]->picurl."' alt='".$part[$k]->name."'/></a></dd><dd class='disc'>".$part[$k]->discription."</dd></dl>";
$k++;
}
?>
</body>
</html>
调用结果,输出的HTML语句都是对的。但就是没有xml文档标签内的数据。
求赐教!!!!!不胜感激~~~~~PS:我是纯菜鸟,表过度鄙视我。。。
------解决方案--------------------
$part = $xml->product->item;
应为
$part = $xml->item;
即根节点不在访问之列
这一点你可以通过 print_r($xml) 观察到