php中url
❶ 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;
}
?>
❷ phpurlencode()與urldecode()函數字元編碼原理詳解
PHP中的urlencode與urldecode函數字元編碼原理
一、答案概述
在PHP中,`urlencode`函數用於對URL進行編碼,以便將其中的特殊字元轉換為適合傳輸的格式。而`urldecode`函數則用於對已經經過URL編碼的數據進行解碼,恢復其原始狀態。這兩個函數主要基於ASCII碼和UTF-8編碼標准進行操作。
二、urlencode函數原理
`urlencode`函數會將字元串中的非標准ASCII字元轉換為對應的百分比編碼。這種編碼方式通過將字元的ASCII碼值轉換為十六進製表示,並在前面加上百分號來實現。例如,空格字元在URL中不能直接傳輸,因此會被轉換為"%20"。其他特殊字元如!@#$%^&*等,也會遵循相同的轉換規則。這樣做的主要目的是確保URL在傳輸過程中的穩定性和兼容性。
三、urldecode函數原理
與`urlencode`相反,`urldecode`函數的作用是將經過百分比編碼的URL字元串還原為原始狀態。它通過識別百分比編碼格式並轉換回相應的字元來實現解碼。例如,"%20"會被解碼回空格字元。這個函數能夠解析大多數標準的百分比編碼序列,恢復URL中的原始數據。
四、字元編碼的重要性
在Web開發中,字元編碼的正確性對於確保數據的正確傳輸和顯示至關重要。特別是在處理包含特殊字元或非英文字元的URL時,`urlencode`和`urldecode`函數能夠確保數據的正確編碼和解碼,避免因字元問題導致的錯誤或數據丟失。因此,了解這兩個函數的編碼原理對於Web開發者來說是非常必要的。
總結來說,`urlencode`和`urldecode`是PHP中處理URL編碼和解碼的常用函數。它們基於ASCII碼和UTF-8編碼標准,確保URL在傳輸過程中的穩定性和兼容性。了解這兩個函數的原理對於處理Web開發中遇到的字元編碼問題至關重要。
❸ php獲取url參數
1、在當前網頁echo出變數$_SERVER['HTTP_HOST']即可獲取域名或主機地址。
❹ php 正則表達式 url匹配
1,preg_grep(pattern,array);它的返回值是一個新數組,新數組的元素是成功匹配的元素。
❺ php如何獲取當前頁面url路徑
function curPageURL() {
$pageURL = 'http';
if ($_SERVER["HTTPS"] == "on")
{
$pageURL .= "s";
}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80")
{
$pageURL .= $_SERVER["SERVER_NAME"] . ":" . $_SERVER["SERVER_PORT"] .
$_SERVER["REQUEST_URI"];
}
else
{
$pageURL .= $_SERVER["SERVER_NAME"] .
$_SERVER["REQUEST_URI"];
}
return $pageURL;}?>
(5)php中url擴展閱讀:
獲取域名或主機地址 :echo $_SERVER['HTTP_HOST'].""; #localhost
獲取網頁地址:echo $_SERVER['PHP_SELF'].""; #/blog/testurl.php
3.獲取網址參數:echo $_SERVER["QUERY_STRING"].""; #id=5
4.獲取用戶代理:echo $_SERVER['HTTP_REFERER']."";
❻ php獲取url參數
1、在當前網頁echo出變數$_SERVER['HTTP_HOST']即可獲取域名或主機地址。