0

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

$xml = simplexml_load_string($res);

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

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

这发生在 2 次直接运行代码的尝试中 - 现在似乎已经消失了,没有对任何内容进行任何更改。

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

如果它对使用这个库的任何人有用(在它被 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 );
 }
}
4

1 回答 1

2

这可能与在 HTML 注释中包含两个减号有关。例如:

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

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

于 2014-10-10T23:16:03.960 回答