php模擬http請求需要實現以下步驟:
1.連接apache服務器
使用fsockopen:專門用于連接服務器,得到一個連接資源
2.寫入http協議
使用fwrite向資源寫入內容
3.接收數據
請求成功后返回的數據會被存放在資源中
4.解析數據:
使用fgets,和fgetc函數
實現代碼:
<?php
//php模擬發出http請求
//1.連接目標服務器apache
$f=fsockopen('localhost',98,$erron,$error);
//2.寫入http協議
//2.1拼湊http協議
//請求行
$http="GET/phpstudy/index.phpHTTP/1.1\r\n";
//請求頭
$http.="Host:localhost\r\n";
//空行
$http.="\r\n";
//2.2寫給apache服務器
if(fwrite($f,$http))
{
//寫入成功
//3.數據已經接收并存放在f資源中
//4.解析資源
//循環遍歷
while($line=fgets($f,1024))
{
//輸出
echo$line."</br>";
}
}