<p>file_get_contents与cURL的区别<br />
主要有以下几点:<br />
1、file_get_contents每次请求都会重新做DNS查询,并没有对DNS的信息进行缓存,而cURL会自动的对DNS的信息进行缓存,在对同一个域名下的一些信息(比如说网页或者是图片)发送请求的时候只需要进行首次的DNS查询,这就会大大的减少DNS查询的次数,使用cURL的性能就比较高一些; <br />
2、使用file_get_contents请求HTTP时,使用的是http_fopen_wrapper,不会keeplive,而cURL却会这样做,这样在多次请求多个链接的时候,cURL效率就会非常高;<br />
3、file_get_contents在使用的时候会受php.ini配置文件中的allow_url_open(是否允许打开远程文件,一般默认是开启状态,但是有些为了安全也会配置将其关闭)选项配置的影响,而cURL是PHP的一个扩展,它不受限制;<br />
4、cURL可以模拟多种请求,比如说:POST数据、表单提交等,我们可以根据自己的需求来定制使用什么请求,而file_get_contents只能使用get方式获取数据。</p>