php如何獲取url
A. php怎麼獲取當前頁面完整URL代碼
PHP提供了內置函數來處理URL獲取。file_get_contents()函數用於讀取整個文件內容為字元串,適用於直接獲取頁面內容。
例如,要獲取一個指定網頁的內容,可以使用如下代碼:
$ret = file_get_contents('要採集的網頁URL');
如果需要從頁面中提取特定信息,可以通過正則表達式進行匹配。首先定義匹配字元串的起始與結束標志:
$begin=change_match_string('匹配開頭的字元串');
$end=change_match_string('匹配結尾的字元串');
接著構建正則表達式模式:
$p = "{$begin}(.*){$end}";
使用eregi函數進行匹配,如果匹配成功,則返回目標內容:
if (eregi($p,$ret,$rs)) return $rs[1]; else return false;
這里需要注意,eregi函數是區分大小寫的,如果需要不區分大小寫的匹配,可以使用ereg函數。
通過這種方式,可以靈活地從網頁中提取所需的信息。
B. php打開URL的幾種方法
PHP中打開URL地址的幾種方法總結,這里的函數主要用於小偷採集等函數。
1:用file_get_contents
以get方式獲取內容
復制代碼代碼如下:
<?php
$url='http://www..com/';
$html=file_get_contents($url);
//print_r($http_response_header);
ec($html);
printhr();
printarr($http_response_header);
printhr();
?>
示例代碼2:用fopen打開url,
以get方式獲取內容
復制代碼代碼如下:
<?
$fp=fopen($url,'r');
printarr(stream_get_meta_data($fp));
printhr();
while(!feof($fp)){
$result.=fgets($fp,1024);
}
echo"urlbody:$result";
printhr();
fclose($fp);
?>
示例代碼3:用file_get_contents函數,以post方式獲取url
復制代碼代碼如下:
<?php
$data=array('foo'=>
'bar');
$data=http_build_query($data);
$opts=array(
'http'
=>array(
'method'=>'POST',
'header'=>"Content-type:
application/x-www-form-urlencoded".
"Content-Length:".strlen($data).
"",
'content'=>$data
),
);
$context=
stream_context_create($opts);
$html=
file_get_contents('http://localhost/e/admin/test.html',false,$context);
echo$html;
?>
示例代碼4:用fsockopen函數打開url,以get方式獲取完整的數據,包括header和body
復制代碼代碼如下:
<?
functionget_url
($url,$cookie=false){
$url=parse_url($url);
$query=
$url[path]."?".$url[query];
ec("Query:".$query);
$fp=fsockopen(
$url[host],$url[port]?$url[port]:80,$errno,$errstr,30);
if(!$fp){
returnfalse;
}else{
$request="GET$queryHTTP/1.1";
$request.="Host:$url[host]";
$request.="Connection:Close";
if($cookie)$request.="Cookie:$cookie ";
$request.="";
fwrite($fp,$request);
while(!@feof($fp)){
$result.=@fgets($fp,
1024);
}
fclose($fp);
return$result;
}
}
//獲取url的html部分,去掉header
functionGetUrlHTML($url,$cookie=false){
$rowdata=get_url($url,$cookie);
if($rowdata)
{
$body=
stristr($rowdata,"");
$body=substr($body,4,strlen($body));
return$body;
}
returnfalse;
}
?>
C. plugin.php鏈接怎麼打開
打開plugin.php鏈接的方法如下:
- 確保環境支持:PHP是服務端腳本語言,需在支持PHP的伺服器上運行。可選擇集成開發環境(IDE),如XAMPP、WAMP等,它們集成了Apache伺服器和MySQL資料庫;也能自己搭建伺服器環境,像在Linux上安裝Apache伺服器、PHP解釋器和MySQL資料庫等。
- 獲取完整URL:通常由伺服器地址和文件路徑組成。若文件託管在本地伺服器,伺服器地址可以是「localhost」或「127.0.0.1」 ;若在遠程伺服器,伺服器地址則為其IP地址或域名。文件路徑指該文件在伺服器上的存儲位置,有相對和絕對路徑之分。
- 選擇打開方式:
- 直接輸入地址:在瀏覽器地址欄輸入plugin.php的完整URL,如「http://localhost/plugin.php」 ,回車後,瀏覽器向伺服器發送請求,伺服器解析並執行文件,將結果返回顯示。
- 使用URL參數:若需傳遞數據,可在URL添加參數,如「http://www.example.com/plugin.php?param1=value1」 ,PHP文件通過$_GET超全局變數訪問參數。
- 使用POST方法:傳遞復雜數據時,可用HTML表單提交數據到該文件,或用JavaScript動態發送POST請求。
- URL重寫:通過配置伺服器或使用相關工具美化簡化URL,使用更友好易記的地址打開。
- 注意事項:要保證伺服器環境正常運行,留意防火牆和殺毒軟體對伺服器訪問的限制;檢查PHP語法錯誤;使用合適的文件許可權,確保伺服器能訪問和執行文件。
D. PHP如何得到當前頁和上一頁的地址
在PHP中,獲取當前頁面和上一頁地址的方法主要依賴於伺服器變數。要獲取上一頁的地址,可以使用$_SERVER['HTTP_REFERER'],它包含了鏈接到當前頁面的前一頁面的URL地址。
然而,需要注意到的是,用戶代理可能會阻止$_SERVER['HTTP_REFERER']的傳遞,因此該變數可能為空。因此,開發者在使用這個變數時需要做好相應的錯誤處理。
如果需要獲取當前頁面的地址,可以使用$_SERVER['REQUEST_URI']。這個變數表示訪問此頁面所需的URI,可以用來表示當前頁面的地址。但是需要注意的是,$_SERVER['REQUEST_URI']返回的URI可能不包含查詢字元串,如果需要獲取完整URL,可能需要結合$_SERVER['SERVER_NAME']和$_SERVER['SERVER_PORT']等其他伺服器變數來構建完整URL。
盡管$_SERVER['HTTP_REFERER']和$_SERVER['REQUEST_URI']是獲取頁面地址的有效方法,但在實際開發中,開發者需要根據具體需求和場景選擇合適的方式。同時,考慮到用戶代理可能的限制,開發者應當做好相應的錯誤處理和兼容性處理。
為了更全面地獲取當前頁面的完整URL,除了$_SERVER['REQUEST_URI'],還可以結合使用$_SERVER['HTTP_HOST'],以獲取完整的URL。例如,完整的URL可以由$_SERVER['HTTP_HOST']加上$_SERVER['REQUEST_URI']構成。
總之,開發者在PHP中獲取當前頁和上一頁的地址時,可以根據實際需求靈活選擇合適的方法,並注意處理可能出現的問題,以確保代碼的穩定性和可靠性。
E. php獲取url參數
1、在當前網頁echo出變數$_SERVER['HTTP_HOST']即可獲取域名或主機地址。
F. php如何獲取當前頁面url路徑
在PHP中,獲取當前頁面的URL路徑可以使用$_SERVER['REQUEST_URI']變數。它包含了當前請求的文件名及查詢字元串。例如,如果當前頁面的URL是"http://example.com/index.php?param=value",那麼$_SERVER['REQUEST_URI']的值將會是"/index.php?param=value"。
除了$_SERVER['REQUEST_URI'],還有其他方法可以獲取當前頁面的URL路徑。例如,可以使用$_SERVER['PHP_SELF']變數,它返回當前腳本的文件名,不包括查詢字元串。但是,這種方法無法獲取完整的URL,只適用於相對路徑。
如果你想獲取完整的URL,可以嘗試使用$_SERVER['HTTP_HOST']和$_SERVER['REQUEST_URI']兩個變數組合,例如"http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']。這將返回類似"http://example.com/index.php?param=value"的完整URL。
當然,除了這些內置的PHP方法,你還可以使用JavaScript獲取當前頁面的URL。例如,window.location.href可以獲取當前頁面的完整URL。
如果你對PHP、HTML+CSS+JS、HTML5+CSS3+jQuery、Linux或C#有任何疑問,都可以聯系我,我的郵箱是[email protected]。