真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

php獲取頭部數(shù)據(jù) php獲取header信息

php怎么獲得頭文件中的Set-Cookie

參考如下:

建網(wǎng)站原本是網(wǎng)站策劃師、網(wǎng)絡(luò)程序員、網(wǎng)頁設(shè)計師等,應(yīng)用各種網(wǎng)絡(luò)程序開發(fā)技術(shù)和網(wǎng)頁設(shè)計技術(shù)配合操作的協(xié)同工作。成都創(chuàng)新互聯(lián)專業(yè)提供成都網(wǎng)站制作、成都網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站制作(企業(yè)站、自適應(yīng)網(wǎng)站建設(shè)、電商門戶網(wǎng)站)等服務(wù),從網(wǎng)站深度策劃、搜索引擎友好度優(yōu)化到用戶體驗的提升,我們力求做到極致!

/*-----保存COOKIE-----*/

$url = 'IP'; //url地址

$post = "id=userpwd=123456"; //POST數(shù)據(jù)

$ch = curl_init($url); //初始化

curl_setopt($ch,CURLOPT_HEADER,1); //將頭文件的信息作為數(shù)據(jù)流輸出

curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); //返回獲取的輸出文本流

curl_setopt($ch,CURLOPT_POSTFIELDS,$post); //發(fā)送POST數(shù)據(jù)

$content = curl_exec($ch); //執(zhí)行curl并賦值給$content

preg_match('/Set-Cookie:(.*);/iU',$content,$str); //正則匹配

$cookie = $str[1]; //獲得COOKIE(SESSIONID)

curl_close($ch); //關(guān)閉curl

/*-----使用COOKIE-----*/

curl_setopt($ch,CURLOPT_COOKIE,$cookie);

100分求助!PHP如何獲取URL主機頭值?

你的代碼應(yīng)該可以實現(xiàn)你要的效果

你這段代碼唯一的錯誤就是少了一個;號

$HTTP_HOST=$_SERVER[ "HTTP_HOST"];

php中http請求頭有什么內(nèi)容,由什么組成

PHP中一般采用getallheaders來獲取頭部,但事實上,有些模式下是獲取不到的(以前真沒有注意過在fastcgi下這個函數(shù)不能用)

在PHP里,想要得到所有的HTTP請求頭,可以使用getallheaders方法,不過此方法并不是在任何環(huán)境下都存在,比如說,你使用fastcgi方式運行PHP的話,就沒有這個方法,所以說我們還需要考慮別的方法,幸運的是$_SERVER里有我們想要的東西,它里面鍵名以HTTP_開頭的就是HTTP請求頭:

$headers = array();

foreach ($_SERVER as $key = $value) {

if ('HTTP_' == substr($key, 0, 5)) {

$headers[str_replace('_', '-', substr($key, 5))] = $value;

}

}

代碼很簡單,需要說明的是RFC里明確指出了信息頭的名字是不區(qū)分大小寫的。

不過并不是所有的HTTP請求頭都是以HTTP_開頭的的鍵的形式存在與$_SERVER里,比如說Authorization,Content-Length,Content-Type就不是這樣,所以說為了取得所有的HTTP請求頭,還需要加上下面這段代碼:

if (isset($_SERVER['PHP_AUTH_DIGEST'])) {

$header['AUTHORIZATION'] = $_SERVER['PHP_AUTH_DIGEST']);

} elseif (isset($_SERVER['PHP_AUTH_USER']) isset($_SERVER['PHP_AUTH_PW'])) {

$header['AUTHORIZATION'] = base64_encode($_SERVER['PHP_AUTH_USER'] . ':' . $_SERVER['PHP_AUTH_PW']));

}

if (isset($_SERVER['CONTENT_LENGTH'])) {

$header['CONTENT-LENGTH'] = $_SERVER['CONTENT_LENGTH'];

}

if (isset($_SERVER['CONTENT_TYPE'])) {

$header['CONTENT-TYPE'] = $_SERVER['CONTENT_TYPE'];

}

如何在php中獲取curl請求的請求頭信息及相應(yīng)頭信息

獲取請求頭信息,可以在curl_exec函數(shù)執(zhí)行前,添加代碼curl_setopt($ch,CURLINFO_HEADER_OUT,true);在curl_exec函數(shù)執(zhí)行后,通過 curl_getinfo($ch,CURLINFO_HEADER_OUT) 來獲取curl執(zhí)行請求的請求數(shù)據(jù)。

獲取響應(yīng)頭信息,可以在curl_exec函數(shù)執(zhí)行前,添加代碼 curl_setopt($ch, CURLOPT_HEADER, true);curl_setopt($ch, CURLOPT_NOBODY,true); 之后 通過curl_exec函數(shù)來獲取響應(yīng)頭信息。獲取設(shè)置 curl_setopt($ch, CURLOPT_NOBODY,false);然后對curl_exec獲取的值通過\r\n\r\n進(jìn)行分割截取第一部分即為響應(yīng)頭信息。

php 獲取網(wǎng)頁頭部信息和網(wǎng)頁和網(wǎng)頁源代碼查看

?php

/**

* http下載類庫

*/

class Httplib{

// 目標(biāo)網(wǎng)站無法打開時返回的錯誤代碼

var $_ERROR_CONNECT_FAILURE = 600;

// 自定義 UserAgent 字符串

var $_SEND_USER_AGENT = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; LazyCMS.net::DownLoader)';

var $_url,$_method,$_timeout;

var $_scheme,$_host,$_port,$_path,$_query,$_referer;

var $_header;

var $_response;

/**

* 兼容PHP5模式

*

* @param 同下面的參數(shù)

*/

function __construct($url=null,$method='GET',$timeout=60){

@set_time_limit(0);

if (!empty($url)) {

$this-connect($url,$method,$timeout);

}

return $this;

}

/**

* 初始化對象

*

* @param string $url

* @param string $method

* @param int $timeout

* @return object

*/

function Httplib($url=null,$method='GET',$timeout=60){

return $this-__construct($url,$method,$timeout);

}

/**

* 改變連接url

*

* @param string $url

* @param string $method

* @param int $timeout

* @return object

*/

function connect($url=null,$method='GET',$timeout=60){

$this-_header = null;

$this-_response = null;

$this-_url = $url;

$this-_method = strtoupper(empty($method) ? 'GET' : $method);

$this-_timeout = empty($timeout) ? 30 : $timeout;

if (!empty($url)) {

$this-_parseURL($url);

}

return $this;

}

/**

* 發(fā)送請求

*

* @param array $params

* @return bool

*/

function send($params=array()) {

$header = null; $response = null; $QueryStr = null;

if (!empty($params)) { $this-_method = 'POST'; }

if (function_exists('fsockopen')) {

$fp = @fsockopen($this-_host,$this-_port,$errno,$errstr,$this-_timeout);

if (!$fp) { return false; }

$_port = ((int)$this-_port!==80) ? ':'.$this-_port : null;

$SendStr = "{$this-_method} {$this-_path}{$this-_query} HTTP/1.0\r\n";

$SendStr.= "Host:{$this-_host}{$_port}\r\n";

$SendStr.= "Accept: */*\r\n";

$SendStr.= "Referer:{$this-_referer}\r\n";

$SendStr.= "User-Agent: ".$this-_SEND_USER_AGENT."\r\n";

$SendStr.= "Pragma: no-cache\r\n";

$SendStr.= "Cache-Control: no-cache\r\n";

//如果是POST方法,分析參數(shù)

if ($this-_method=='POST') {

//判斷參數(shù)是否是數(shù)組,循環(huán)出查詢字符串

if (is_array($params)) {

$QueryStr = http_build_query($params);

} else {

$QueryStr = $params;

}

$length = strlen($QueryStr);

$SendStr.= "Content-Type: application/x-www-form-urlencoded\r\n";

$SendStr.= "Content-Length: {$length}\r\n";

}

$SendStr.= "Connection: Close\r\n\r\n";

if(strlen($QueryStr) 0){

$SendStr.= $QueryStr."\r\n";

}

fputs($fp,$SendStr);

// 讀取 header

do{ $header.= fread($fp,1); } while (!preg_match("/\r\n\r\n$/",$header));

// 遇到跳轉(zhuǎn),執(zhí)行跟蹤跳轉(zhuǎn)

if ($this-_redirect($header)) { return true; }

// 讀取內(nèi)容

while(!feof($fp)) {

$response.= fread($fp,4096);

}

fclose($fp);

} elseif (function_exists('curl_exec')) {

$ch = curl_init($this-_url);

curl_setopt_array($ch,array(

CURLOPT_TIMEOUT = $this-_timeout,

CURLOPT_HEADER = true,

CURLOPT_RETURNTRANSFER = true,

CURLOPT_USERAGENT = $this-_SEND_USER_AGENT,

CURLOPT_REFERER = $this-_referer,

));

if ($this-_method=='GET') {

curl_setopt($ch,CURLOPT_HTTPGET,true);

} else {

if (is_array($params)) {

$QueryStr = http_build_query($params);

} else {

$QueryStr = $params;

}

curl_setopt($ch,CURLOPT_POST,true);

curl_setopt($ch,CURLOPT_POSTFIELDS,$QueryStr);

}

$fp = curl_exec($ch);

curl_close($ch);

if (!$fp) { return false; }

$i = 0; $length = strlen($fp);

// 讀取 header

do{ $header.= substr($fp,$i,1); $i++; } while (!preg_match("/\r\n\r\n$/",$header));

// 遇到跳轉(zhuǎn),執(zhí)行跟蹤跳轉(zhuǎn)

if ($this-_redirect($header)) { return true; }

// 讀取內(nèi)容

do {

$response.= substr($fp,$i,4096);

$i = $i + 4096;

} while ($length=$i);

unset($fp,$length,$i);

}

$this-_header = $header;

$this-_response = $response;

return true;

}

/**

* 跟蹤跳轉(zhuǎn)

*

* @param string $header

* @return bool

*/

function _redirect($header){

if (in_array($this-status($header),array(301,302))) {

if(preg_match("/Location\:(.+)\r\n/i",$header,$regs)){

$this-connect(trim($regs[1]),$this-_method,$this-_timeout);

$this-send();

return true;

}

} else {

return false;

}

}

/**

* 取得請求的header

*

* @return string

*/

function header(){

return $this-_header;

}

/**

* 請求返回的html

*

* @return string

*/

function response(){

return $this-_response;

}

/**

* 返回狀態(tài)

*

* @param string $header

* @return int

*/

function status($header=null){

if (empty($header)) {

$header = $this-_header;

}

if(preg_match("/(.+) (\d+) (.+)\r\n/i",$header,$status)){

return $status[2];

} else {

return $this-_ERROR_CONNECT_FAILURE;

}

}

/**

* 解析url

*

* @param string $url

*/

function _parseURL($url){

$aUrl = parse_url($url);

$aUrl['query'] = isset($aUrl['query']) ? $aUrl['query'] : null;

$scheme = isset($_SERVER['HTTPS']) ? $_SERVER['HTTPS'] : null;

$this-_scheme = ($scheme=='off' || empty($scheme)) ? 'http' : 'https';

$this-_host = isset($aUrl['host']) ? $aUrl['host'] : null;

$this-_port = empty($aUrl['port']) ? 80 : (int)$aUrl['host'];

$this-_path = empty($aUrl['path']) ? '/' : (string)$aUrl['path'];

$this-_query = strlen($aUrl['query']) 0 ? '?'.$aUrl['query'] : null;

$this-_referer = $this-_scheme.'://'.$aUrl['host'];

}

}

$http = new Httplib('');

$http-send();

$body = $http-response();

echo $body;


文章題目:php獲取頭部數(shù)據(jù) php獲取header信息
URL標(biāo)題:http://weahome.cn/article/docgjis.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部