1. 通過file_get_contents()函數
$contents = file_get_contents('http://demo.com/index.php');
echo $contents;
2. 通過fopen()和fread()函數
$handle = fopen('http://demo.com/index.php', 'r'); // 以只讀方式打開文件並將指針指向文件頭,資源類型
$contents = '';
while (!feof($handle)){ // 判斷文件指針是否到了文件的末尾
$contents .= fread($handle, 1024); // 每次讀取1024個字節的數據
}
fclose($handle); // 關閉文件
echo $contents;
3. 通過php的curl擴展庫
// 創建一個curl會話資源
$ch = curl_init();
// 設置curl相應的選項
curl_setopt($ch, CURLOPT_URL, "http://demo.com/index.php");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// 執行curl
$contents = curl_exec($ch);
// 關閉curl會話
curl_close($ch);
echo $contents;
總結:
php中獲取文件內容的方法有很多種,這里只列舉了常用的三種,推薦使用第三種方法(curl抓取方式),curl是模擬瀏覽器的操作,效率比前兩種方法要高,而且支持很多選項設置,操作起來更加靈活。不足之處是,curl方式必須要有php的curl擴展庫的支持。