1. 程式人生 > >用php獲取header頭資訊

用php獲取header頭資訊

      研究一晚上php關於自定義header頭資訊的問題。看了很多程式碼,但是由於本人才疏學淺。連測試demo都沒跑通。實在是慚愧。這裡看到個獲取header資訊的方法,挺不錯的,記錄一下。

      我們可以在$_SERVER中獲取header資料,自定義的資料都是使用HTTP_作為字首的,所以可以把HTTP_字首的資料讀出。

public function get_all_header()
  {
    // 忽略獲取的header資料。這個函式後面會用到。主要是起過濾作用
    $ignore = array('host','accept','content-length','content-type'
); $headers = array(); //這裡大家有興趣的話,可以列印一下。會出來很多的header頭資訊。咱們想要的部分,都是‘http_'開頭的。所以下面會進行過濾輸出。 /* var_dump($_SERVER); exit;*/ foreach($_SERVER as $key=>$value){ if(substr($key, 0, 5)==='HTTP_'){ //這裡取到的都是'http_'開頭的資料。 //前去開頭的前5位 $key = substr($key, 5); //把$key中的'_'下劃線都替換為空字串
$key = str_replace('_', ' ', $key); //再把$key中的空字串替換成‘-’ $key = str_replace(' ', '-', $key); //把$key中的所有字元轉換為小寫 $key = strtolower($key); //這裡主要是過濾上面寫的$ignore陣列中的資料 if(!in_array($key, $ignore)){ $headers[$key] = $value; } } } //輸出獲取到的header
return $headers; }

越學習越發現自己到底有多菜。加油。各位聖誕節快樂!