“注释未终止”Box API响应中的XML解析错误

时间:2013-10-09 23:16:54

标签: php rest xml-parsing box-api

几个月来,我一直在运行Angela R的“Box Rest Client”lib,它使用以下代码来解析来自框API的卷曲响应:

$xml = simplexml_load_string($res);

今天,在代码循环遍历数十个请求/响应之后,我生成了以下错误:

  

ErrorException [警告]:simplexml_load_string():实体:第9行:   解析器错误:注释未终止

这发生在连续两次运行代码的尝试中 - 现在似乎已经消失而没有任何改变。

有兴趣的话,如果有人知道这是怎么回事?

如果对于使用此lib的任何人都有用(在下一个月左右被box api 2.0弃用之前),我已经为这个案例设置了一个问题。

private function parse_result($res) {
 try {
      $xml = simplexml_load_string($res);
  $json = json_encode($xml);
  $array = json_decode($json,TRUE);     
  return $array;
 } catch (Exception $e){    
    $error = 'xml parsing error: '. $e->getMessage(). "<br>";
  return array('status' => $error );
 }
}

1 个答案:

答案 0 :(得分:1)

它可能与在HTML评论中包含两个减号有关。例如:

<!-- this is my comment--but not a very good one. -->

注释中间的两个破折号会导致解析器出现问题。