自定义函数替代file_get_contents获取远程数据
传说中的file_get_contents占用系统资源问题终于也在我们的项目里出现了. 无内容返回时, file_get_contents无法释放资源, 导致服务器经常发生504错误. 所以, 以下的自定义函数就诞生了.
/** * 获取URL路径的HTML数据 * @param string $url * @return mixed|string */ function getUrlData($url) { try{ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5); //链接超时时间 $content = curl_exec($ch); curl_close($ch); return $content; } catch(Exception $error) { return ""; } }
CURLOPT_RETURNTRANSFER 是否抓取页面跳转后的代码
CURLOPT_CONNECTTIMEOUT 设置链接的超时时间, 超时后可以释放对资源的占用.
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: 在PHP中自定义session的存储方式
- 下一篇:没有了