”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 显示外部链接时,cURL 可以可靠地替代 file_get_contents 吗?

显示外部链接时,cURL 可以可靠地替代 file_get_contents 吗?

发布于2024-11-03
浏览:356

Can cURL Be a Reliable Replacement for file_get_contents When Displaying External Links?

用cURL替换file_get_contents进行外部链接显示

当遇到file_get_contents函数的兼容性问题时,cURL提供了访问外部链接的替代方法。以下是如何有效实现它:

最初提供的代码由于缺少参数而无法显示所需的内容。为了解决这个问题,需要进行以下增强:

  • CURLOPT_AUTOREFERER: 启用“Referer”标头的自动发送,这对于服务器端的解析至关重要。
  • CURLOPT_FOLLOWLOCATION: 允许 cURL 遵循遇到的任何重定向,确保内容检索。

总之,修改后的代码显示为:

function file_get_contents_curl($url) {
    $ch = curl_init();

    curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);       

    $data = curl_exec($ch);
    curl_close($ch);

    return $data;
}

通过合并这些附加内容,cURL 可以有效地替换您场景中的 file_get_contents,使您能够按预期在网页上显示外部链接。

版本声明 本文转载于:1729172117如有侵犯,请联系[email protected]删除
最新教程 更多>

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3