您的位置 首页 php

PHP fopen/file_get_contents与curl对比

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

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

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 函数则会储存成数组形式

文章来源:智云一二三科技

文章标题:PHP fopen/file_get_contents与curl对比

文章地址:https://www.zhihuclub.com/77081.shtml

关于作者: 智云科技

热门文章

网站地图