与Joomla 1.7 foreach XMLParser

与Joomla 1.7 foreach XMLParser

问题描述:

我试过在其他地方寻找答案,但在Joomla XMLParser的文档是非常差。基本上,我只是试图从XML文件中的节点提取数据。如果任何人都可以向我解释什么是错我的语法我将不胜感激:与Joomla 1.7 foreach XMLParser

$path = "uploaded_xmls/" . $_FILES["file"]["name"]; 

     $xml =& JFactory::getXMLParser('Simple'); 

     $user = & JFactory::getUser(); 

     if($user->id && $xml->loadFile($path)) {    
      foreach($xml->document->track as $track) { 
       $track_id = $track->getElementByPath('id'); 
       $track_type = 's';    
      } 
      } 
+0

为什么不利用好醇”纯simplexml的。它甚至看起来像joomla使用simplexml本身(应检查代码是肯定的)。另见http://nl2.php.net/simplexml – giorgio 2012-01-29 04:15:06

JFactory::getXMLParser('simple')返回根据

一个

“的PHP5接口的SimpleXML的PHP​​4兼容实现”到doc块。

我无法从代码片断中发现哪里出了问题(而且您没有真正指定),所以它甚至可能是XML文件格式的问题。

你可能会更好使用JFactory::getXML($data, $isFile)这只是simplexml_load_XXXX在包装。即。 $data可以是您的XML或XML文件的路径,您可以相应地设置布尔值$isFile

最大的优势,当然,是simplexml has plenty documentation和实例/