- 相關(guān)推薦
php中file-get-contents與curl性能比較分析的內(nèi)容
PHP中fopen,file_get_contents,curl函數(shù)的區(qū)別:
1.fopen /file_get_contents 每次請求都會重新做DNS查詢,并不對 DNS信息進行緩存。但是CURL會自動對DNS信息進行緩存。對同一域名下的網(wǎng)頁或者圖片的請求只需要一次DNS查詢。這大大減少了DNS查詢的次數(shù)。所以CURL的性能比fopen /file_get_contents 好很多。
2.fopen /file_get_contents 在請求HTTP時,使用的是http_fopen_wrapper,不會keeplive。而curl卻可以。這樣在多次請求多個鏈接時,curl效率會好一些。
3.fopen / file_get_contents 函數(shù)會受到php.ini文件中allow_url_open選項配置的影響。如果該配置關(guān)閉了,則該函數(shù)也就失效了。而curl不受該配置的影響。
4.curl 可以模擬多種請求,例如:POST數(shù)據(jù),表單提交等,用戶可以按照自己的需求來定制請求。而fopen / file_get_contents只能使用get方式獲取數(shù)據(jù)。
file_get_contents 獲取遠程文件時會把結(jié)果都存在一個字符串中 fiels函數(shù)則會儲存成數(shù)組形式
因此,我還是比較傾向于使用curl來訪問遠程url。Php有curl模塊擴展,功能很是強大。
【php中file-get-contents與curl性能比較分析的內(nèi)容】相關(guān)文章:
PHP中curl的使用實例07-31
探討PHP函數(shù)的實現(xiàn)原理及性能07-07
簡單分析PHP中序列化用法介紹08-15
PHP對象注入的實例分析08-27
PHP中關(guān)于類的定義10-02
php中session的實現(xiàn)原理以及大網(wǎng)站應(yīng)用應(yīng)注意的問題分析07-26
PHP中函數(shù)的使用說明09-01