file_get_content 和curl以及fopen 誰的效率最高

三個函數雖然都是讀取資源的函數,但各自的應用場景不一樣。緩存

curl多用於互聯網網頁之間的抓取,fopen多用於讀取文件,而file_get_contents多用於獲取靜態頁面的內容。app

1. fopen /file_get_contents 每次請求都會從新作DNS查詢,並不對DNS信息進行緩存。可是CURL會自動對DNS信息進行緩存。對同一域名下的網頁或者圖片的請求只須要一次DNS查詢。這大大減小了DNS查詢的次數。因此CURL的性能比fopen /file_get_contents 好不少。curl

2. fopen /file_get_contents在請求HTTP時,使用的是http_fopen_wrapper,不會keeplive。而curl卻能夠。這樣在屢次請求多個連接時,curl效率會好一些。函數

3. curl能夠模擬多種請求,例如:POST數據,表單提交等,用戶能夠按照本身的需求來定製請求。而fopen / file_get_contents只能使用get方式獲取數據。性能

相關文章
相關標籤/搜索