如何下载带有“Transfer-Encoding:chunked”的页面PHP 5.2 之前

发布于 2024-11-18 04:08:33 字数 103 浏览 4 评论 0原文

尝试从 XML 语言检索页面。然而,检索是不可靠的,因为它是分块传输编码。如何正确下载此页面以便进一步编辑?

我无法使用 PHP 流过滤器,因为我的 PHP 版本只有 5.2。

Trying to retrieve a page from the XML language. However, retrieval is unreliable because it is a chunked transfer encoding. How do I download this page correctly to give me further editing?

I can not use PHP Stream Filters because my PHP version is only 5.2.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

海风掠过北极光 2024-11-25 04:08:33

我建议使用 cURL。它支持 HTTP/1.1,这是可靠接收分块数据所必需的。 PHP 核心函数如 file_get_contents不支持 HTTP/1.1 PHP 5.3.0 之前不支持分块数据

编辑

重新措辞以澄清。谢谢你,@troelskn。

编辑

使用 cURL 的示例:

$rCURL = curl_init();

curl_setopt($rCURL, CURLOPT_URL, 'http://www.example.com/file_to_retrieve.xml');
curl_setopt($rCURL, CURLOPT_HEADER, 0);
curl_setopt($rCURL, CURLOPT_RETURNTRANSFER, 1);

$aData = curl_exec($rCURL);

curl_close($rCURL);

var_dump($aData);

I'd recommend using cURL. It supports HTTP/1.1, which is neccessary to reliably receive chunked data. The PHP core functions like file_get_contents and the like do not support HTTP/1.1 do not support chunked data before PHP 5.3.0.

EDIT

Rephrased to clarify. Thank you, @troelskn.

EDIT

Example using cURL:

$rCURL = curl_init();

curl_setopt($rCURL, CURLOPT_URL, 'http://www.example.com/file_to_retrieve.xml');
curl_setopt($rCURL, CURLOPT_HEADER, 0);
curl_setopt($rCURL, CURLOPT_RETURNTRANSFER, 1);

$aData = curl_exec($rCURL);

curl_close($rCURL);

var_dump($aData);
剩余の解释 2024-11-25 04:08:33

使用 curl 扩展。

或者对于简单的 GET 请求,只需使用内置包装器(例如 file_get_contents

Use the curl extension.

Or for simple GET requests, just use the built-in wrappers (E.g. file_get_contents)

是你 2024-11-25 04:08:33

使用 ext/curl 下载文件。

Use ext/curl to download the file.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文