simplexml_load_file无法在循环中工作

时间:2017-09-08 06:34:17

标签: php xml

我在一个数组中有一组XML文件(大约50个)。我试图在循环中使用简单的加载XML函数。我收到内部服务器错误。超时不是问题。此外,我已经尝试将这些分成10个XML组并且正在运行。

请帮忙。

foreach ($feed_arr as $feed) {
    $xml = simplexml_load_file($feed);
    echo $feed.'<br>';
}

2 个答案:

答案 0 :(得分:0)

How to get XML Tag and DATA Recursively

使用这个小函数递归循环遍历xml数据并输出应用程序的标记和数据。

<?php
//Load your xml file
$xml = simplexml_load_file('settings.xml');

//Get the XML Tags and Data recusively;
getXMLData($xml);


// Function;
function getXMLData($xml){
    $i=0; $name = "";

    foreach ($xml as $k){
        $tag = $k->getName();
        $tag_value = $xml->$tag;
        if ($name == $tag){ 
            $i++;    
         } 
            $name = $tag;     
            echo $tag .' '.$tag_value[$i].'<br />';

           getXMLData($xml->$tag->children());
    }
}
?>

答案 1 :(得分:0)

检查加载XML文件时是否生成错误:

<?php
libxml_use_internal_errors();
$xml = simplexml_load_file($feed);
if ($xml == false) {
  echo "error";
  foreach(libxml_get_errors() as $error) {
    echo "$error->message";
  }
}
 ?>