php - fatal error : Uncaught exception 'Exception' with message 'String could not be parsed as XML'

标签 php xml curl

我正在使用 PHP 5 并尝试使用 cURL 从网页获取货币汇率。

要检索我调用的内容:

$html = curl_exec($ch);

这会正确显示页面。但是,当我尝试使用以下命令将其格式化为 XML 时:

$xml = new SimpleXMLElement($html);

显示大量警告,以“ fatal error :未捕获异常“异常”,消息“字符串无法解析为 XML”结尾

我使用了stripslashes($html)并关闭了magic_qoutes...

请帮我找到解决方案,过去两天我一直被这个问题困扰。

另请注意,该页面嵌入了 JavaScript。这是不允许创建 XML 的 JavaScript 吗?

谢谢

最佳答案

如果您不想读取 xml 数据,请按照以下步骤操作,

$xmlURL = "这里是您的 xml url/文件名";

try {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $xmlURL);
    curl_setopt($ch, CURLOPT_HEADER, false);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array(
        'Content-type: text/xml'
    ));
    $content = curl_exec($ch);
    $error   = curl_error($ch);
    curl_close($ch);
    $obj = new SimpleXMLElement($content);
    echo "<pre>";
    var_dump($obj);
    echo "</pre>"; 
}
catch(Exception $e){
    var_dump($e);exit;
}

您将获得整个 XML 文件的数组格式。

谢谢。

关于php - fatal error : Uncaught exception 'Exception' with message 'String could not be parsed as XML' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12252141/

相关文章:

android - 使用relativelayout让textview占据屏幕一半的宽度

php - 如何迭代具有动态子节点的 XML 元素节点

php - 为什么用它的散列作为 salt 返回散列的字符串散列?

php - 是否可以将 Smarty 模板转换为 HTML 而无需将其输出到页面?

javascript - jQuery 中的大型 XML 数据

c - 具有 cURL 或类似内容的 Cookie 的值

bash - 为什么 grep 相同的联机帮助页有时会导致错误?

Facebook API 错误子代码 33

php - 调用 php artisan db :seed does not work without providing a class name

php - 目录复制?