【问题标题】:Twitter API simplexml_load_string stop workingTwitter API simplexml_load_string 停止工作
【发布时间】:2011-08-22 23:27:09
【问题描述】:

今天早上,我用于 Twitter OAuth 发布的 PHP 脚本停止工作。我怀疑 Twitter 为返回的字符串添加了一些行。谁能帮忙调试一下。

谢谢

Warning:  simplexml_load_string() [function.simplexml-load-string]: Entity: line 74: 
parser error : Entity 'copy' not defined in /nfs/c05/h01/mnt/82363/domains/html/c/cron.m.php on line 429

Warning:  simplexml_load_string() [function.simplexml-load-string]:           
<li class="first">&copy; 2011 Twitter</li> in /nfs/c05/h01/mnt/82363/domains/html/c/cron.m.php on line 429

Warning:  simplexml_load_string() [function.simplexml-load-string]: ^ in /nfs/c05/h01/mnt/82363/domains/html/c/cron.m.php on line 429

【问题讨论】:

    标签: php xml api twitter simplexml


    【解决方案1】:

    XML 包含 HTML 实体。 &amp;copy; 在 XML 中无效。作为一种解决方法,您可以在将文档移交给 SimpleXML 之前对其进行预过滤:

    $xml = file_get_contents(...);
    $xml = strtr($xml, array_flip(array_diff(
               get_html_translation_table(HTML_ENTITIES),
               get_html_translation_table(HTML_SPECIALCHARS)
           )));
    
    $xml = simplexml_load_string($xml);
    

    【讨论】:

      【解决方案2】:

      此代码适用于 UTF-8 字符串 xml 数据。

      $xml = mb_strtr($xml, array_flip(array_diff(get_html_translation_table(HTML_ENTITIES),get_html_translation_table(HTML_SPECIALCHARS))));

      $xml = simplexml_load_string($xml);

      【讨论】:

        【解决方案3】:

        回显字符串并查找对 xml 文件所做的新更改,

        他们可能添加了命名空间。

        【讨论】:

        • 还显示加载字符串的代码,也许你需要一些不同的东西
        • 在xml中寻找'copy'
        猜你喜欢
        • 1970-01-01
        • 2010-12-01
        • 2015-09-12
        • 1970-01-01
        • 2023-04-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多