【问题标题】:Abort Twitter XML loading in PHP在 PHP 中中止 Twitter XML 加载
【发布时间】:2013-01-05 02:40:04
【问题描述】:

我正在使用 simplexml_load_file() 函数加载 Twitter 成员 XML。

这很好用,我可以解析 XML,但有时需要很多时间 加载 XML 或 XML 不加载因为 Twitter。而这不仅 因为来自 Twitter 的 150 个请求限制。

这就是为什么我想知道是否可以中止 Twitter XML 文件 30秒后加载时加载不成功?

谢谢!

【问题讨论】:

    标签: php xml twitter


    【解决方案1】:

    使用simplexml_load_file(),我认为您无能为力。

    但是,当使用 cURL 检索 URL 的内容时,您可以指定超时:

    $curl = curl_init($url);
    curl_setopt($curl, CURLOPT_TIMEOUT, 10); // <- Timeout in Seconds
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
    
    $xml = curl_exec($curl);
    curl_close($curl);
    

    【讨论】:

      【解决方案2】:

      我首先想到的是使用 AJAX。创建对执行加载功能的 PHP 脚本的调用,如果需要超过 30 秒,则让 JavaScript 中止 AJAX 调用。

      $.ajax({'complete': callbackFunction, 'url': 'foo/bar/', 'timeout': 5000, 'error': errorCallback});
      

      您正在寻找timeouterror。超时(以 ms 为单位)中止脚本并调用 error 函数,您可以使用该函数返回操作已中止(或您想要对其执行的任何操作)的消息。

      您可以在 Jquery Document about AJAX

      【讨论】:

        猜你喜欢
        • 2012-06-24
        • 2012-08-19
        • 2016-10-02
        • 2014-11-03
        • 1970-01-01
        • 2019-12-19
        • 2021-07-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多