首頁  >  文章  >  後端開發  >  php中$_GET,$_POST,$_REQUEST和$_SERVER的用法

php中$_GET,$_POST,$_REQUEST和$_SERVER的用法

WBOY
WBOY原創
2016-07-25 08:56:331422瀏覽
  1. echo $_GET['xingming']."";
  2. echo $_GET['age']."
    ";
  3. echo $_POST['xingming']."
    ";
  4. echo $_POST['age' ]."
    ";
  5. ?>
複製程式碼

$_REQUEST的官方說明: $_REQUEST — HTTP Request 變數預設包含了 $_GET,$_POST 和 $_COOKIE 的陣列。 在不關心是get過來的還是post,總之要取得某一個鍵的值,就用$_REQUEST即可。 不過$_REQUEST速度會比$_GET,$_POST稍慢點。 透過$_SERVER取得伺服器端信息 $_SERVER是一個數組,包含了headers, paths, script locations等多種資訊。早期的php版本使用$HTTP_server_VARS數組,現在已經被棄用了。 不同的伺服器$_SERVER的資訊也不一定相同的。通常的用法如下:

  1. echo $_SERVER['SERVER_ADDR'];
  2. echo $_SERVER['QUERY_STRING'];
echo $_SERVER['QUERY_STRING'];

  1. >複製程式碼
  2. 比較常用的取得QUERY_STRING的方法,透過$_SERVER['QUERY_STRING']得到的是諸如name=mike&age=30這樣的。要把這種格式的值轉成變量,PHP有個方法parse_str,可以實現這個功能。 官方的範例:
$str = "first=value&arr[]=foo+bar&arr[]=baz";

parse_str(str. );

echo $first; // value
echo $arr[0]; // foo bar
echo $arr[1]; // baz
    parse_str($str, $output) ;
  1. echo $output['first']; // value
  2. echo $output['arr'][0]; // foo bar
  3. echo $output['arr'][1]; // baz
  4. ?>
複製程式碼
在本地環境通過程式碼: echo ""; var_dump($_SERVER); echo ""; 複製程式碼

用帶格式的列印資料出陣列內容:

數組(31){ [“HTTP_ACCEPT”]=> 字串(3)“*/*” [“HTTP_ACCEPT_LANGUAGE”]=> 字串(5)“zh-CN” [“HTTP_USER_AGENT”]=> string(205) "Mozilla/4.0(相容;MSIE 8.0;Windows NT 6.1;WOW64;Trident/4.0;SLCC2;.NET CLR 2.0.50727;.NET CLR 3.5.30729;.NET CLR 3.0.307729; 6.0;.NET4.0E; [“HTTP_ACCEPT_ENCODING”]=> 字串(13)“gzip,放氣” [“HTTP_HOST”]=> 字串(14)“本地主機:8080” [“HTTP_CONNECTION”]=> 字串(10)“保持活動” [“HTTP_COOKIE”]=> 字串(154)“codehilite = IsPre = True&IsShowRowNumber = False&IsUseBR = False&Language = Csharp; iGHA2Cas = key = s8hoPBw6cWYHJ34NowHt%2f77gsEiQ9U9K0 [“路徑”]=> 字串(540)「C:程式檔案(x86)ActiveState Komodo IDE 7;C:程式檔案(x86)ActiveState Komodo編輯7;E:appAdministratorproduct11.1.0client_1bin;C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem; : WindowsSystem32WindowsPowerShellv1.0;C:Program Files (x86)Microsoft SQL Server100ToolsBinn;C:Program FilesMicrosoft SQL Server100ToolsBinn;C:Program FilesMicrosoft SQL Server100DTSBinn;C:Program FilesTortoiseSVNbinbin; 。 [“系統根目錄”]=> 字串(10)“C:Windows” [“COMSPEC”]=> 字串(27)“C:Windowssystem32cmd.exe” [“PATHEXT”]=> 字串(53)“.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC” [“WINDIR”]=> 字串(10)“C:Windows” [“SERVER_SIGNATURE”]=> 字串(0)“” [“SERVER_SOFTWARE”]=> 字串(31)“Apache / 2.2.22(Win32)PHP / 5.4.4” [“SERVER_NAME”]=> 字串(9)“本地主機” [“SERVER_ADDR”]=> 字串(9)“127.0.0.1” [“SERVER_PORT”]=> 字串(4)“8080” [“REMOTE_ADDR”]=> 字串(9)“127.0.0.1” [“DOCUMENT_ROOT”]=> 字串(13)“D:/ phpwwwroot” [“SERVER_ADMIN”]=> 字串(11)“dds@wwd.com” [“SCRIPT_FILENAME”]=> 字串(29)“D:/phpwwwroot/RecJP/test2.php” [“REMOTE_PORT”]=> 字串(5)“23827” [“GATEWAY_INTERFACE”]=> 字串(7)“CGI/1.1” [“SERVER_PROTOCOL”]=> 字串(8)“HTTP/1.1” [“REQUEST_METHOD”]=> 字串(3)“獲取” [“QUERY_STRING”]=> 字串(0)“” [“REQUEST_URI”]=> 字串(16)“/RecJP/test2.php” [“SCRIPT_NAME”]=> 字串(16)“/RecJP/test2.php” [“PHP_SELF”]=> 字串(16)“/RecJP/test2.php” [“REQUEST_TIME_FLOAT”]=> 浮動(1351577790572) [“REQUEST_TIME”]=> 整數(-1336907668) }


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn