本文主要給大家介紹了關(guān)于php中請求url的五種方法,分享出來供大家參考學(xué)習(xí),下面話不多說,來一起看看詳細的介紹:
五種方法:
- 前三種都是php基本的文件操作函數(shù)
curl()
是php擴展需要開啟,linux下需要安裝exec()
執(zhí)行的是linux命令行下的命令wget下載遠程文件
其中wget命令在本地虛機測試請求http://www.baidu.com時,沒有成功,在遠程服務(wù)器上卻可以,考慮時DNS解析的問題,于是直接請求IP成功下載了index.html的文件。
這里只提供了方法,其中的優(yōu)缺點需要詳細了解每一個方法的功能和缺陷。
一、fopen()函數(shù)
$file = fopen("http://www.jb51.net", "r") or die("打開遠程文件失敗!"); while (!feof($file)) { $line = fgets($file, 1024); //使用正則匹配標題標記 if (preg_match("/<title>(.*)<\/title>/i", $line, $out)) { $title = $out[1]; //將標題標記中的標題字符取出 break; //退出循環(huán),結(jié)束遠程文件讀取 } } fclose($file);
二、file()函數(shù)
$lines = file("http://www.jb51.net/article/48866.htm"); readfile(http://www.jb51.net/article/48866.htm);
三、file_get_contents()函數(shù)
$content = file_get_contents(http://www.jb51.net/article/48866.htm);
四、curl() 請求遠程url數(shù)據(jù)
$url = "http://www.baidu.com"; $ch = curl_init(); $timeout = 5; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $contents = curl_exec($ch); curl_close($ch);
五、exec() 執(zhí)行命令行命令
//exec("wget 220.181.111.188"); shell_exec("wget 220.181.111.188");
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對的支持。
【網(wǎng)站聲明】本站除付費源碼經(jīng)過測試外,其他素材未做測試,不保證完整性,網(wǎng)站上部分源碼僅限學(xué)習(xí)交流,請勿用于商業(yè)用途。如損害你的權(quán)益請聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。