几个月来,我一直在运行Angela R的"Box Rest Client"库,它使用以下代码来解析来自box API的curl响应:
$xml = simplexml_load_string($res);
今天,在代码循环处理数十个请求/响应后,我生成了以下错误:
错误异常 [ 警告 ]: 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 );
}
}
它可能与在 HTML 注释中包含两个减号有关。 例如:
<!-- this is my comment--but not a very good one. -->
注释中间的两个破折号会导致解析器出现问题。