PHP fopen/file_get_contents与curl对比

2022-10-11 21:41:39 168 0
魁首哥

1.fopen/file_get_contents 每次请求都会重新做 DNS 查询,并不对 DNS 信息进行 缓存

但是 CURL 会自动对 DNS 信息进行缓存。对同一域名下的网页或者图片的请求只需要一次 DNS 查询。这大大减少了 DNS 查询的次数。所以 CURL 的性能比 fopen /file_get_contents 好很多。

PHP fopen/file_get_contents与curl对比

2.fopen/file_get_contents 在请求 HTTP 时,使用的是 http_fopen_wrapper,不会 keeplive。

而 curl 却可以。这样在多次请求多个链接时,curl 效率会好一些。

3.fopen/file_get_contents 函数会受到 php.ini 文件中 allow_url_open 选项配置的影响。

如果该配置关闭了,则该函数也就失效了。而 curl 不受该配置的影响。

4.curl 可以模拟多种请求,例如:POST 数据,表单提交等,用户可以按照自己的需求来定制请求。

而 fopen /file_get_contents 只能使用 get 方式获取数据。

file_get_contents 获取远程文件时会把结果都存在一个 字符串 中 fiels 函数则会储存成数组形式

收藏
分享
海报
0 条评论
168
上一篇:PHP的流程控制 下一篇:PHPMAILER实现PHP发邮件功能php实例

本站已关闭游客评论,请登录或者注册后再评论吧~

忘记密码?

图形验证码