1、超級全局變量php
超級全局變量在PHP 4.1.0以後被啓用, 是PHP系統中自帶的變量,在一個腳本的所有做用域中均可用。 html
PHP中預約義了幾個超級全局變量(superglobals) ,這意味着它們在一個腳本的所有做用域中均可用。 你不須要特別說明,就能夠在函數及類中使用。數組
1. $GLOBALS 是一個包含了所有變量的全局組合數組。變量的名字就是數組的鍵。服務器
例:函數
<?php
$x = 75;
$y = 25;post
function addition(){
$GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}
addition();
echo $z;
?>spa
2. $_SERVER 是一個包含了諸如頭信息(header)、路徑(path)、以及腳本位置(script locations)等等信息的數組。這個數組中的項目由 Web 服務器建立。不能保證每一個服務器都提供所有項目;服務器可能會忽略一些,或者提供一些沒有在這裏列舉出來的項目。3d
例:代理
<?php
echo $_SERVER['PHP_SELF']; //當前執行腳本的文件名
echo "<br>";
echo $_SERVER['SERVER_NAME']; //當前運行腳本所在的服務器的主機名
echo "<br>";
echo $_SERVER['HTTP_HOST']; //當前請求頭中 Host: 項的內容,若是存在的話。
echo "<br>";
echo $_SERVER['HTTP_REFERER']; //引導用戶代理到當前頁的前一頁的地址。
echo "<br>";
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
echo $_SERVER['SCRIPT_NAME']; //包含當前腳本的路徑。
?>orm
3.$_REQUEST 用於收集HTML表單提交的數據。如下實例顯示了一個輸入字段(input)及提交按鈕(submit)的表單(form)。 當用戶經過點擊 "Submit" 按鈕提交表單數據時, 表單數據將發送至<form>標籤中 action 屬性中指定的腳本文件。 在這個實例中,咱們指定文件來處理表單數據。若是你但願其餘的PHP文件來處理該數據,你能夠修改該指定的腳本文件名。 而後,咱們能夠使用超級全局變量 $_REQUEST 來收集表單中的 input 字段數據:
例:
<div class="box1">
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
Name: <input type="text" name="liang">
<input type="submit">
</form>
<?php
$name = htmlspecialchars($_REQUEST ['liang']);
echo $name;
?>
</div>
4.$_POST 被普遍應用於收集表單數據,在HTML form標籤的指定該屬性:"method="post"。如下實例顯示了一個輸入字段(input)及提交按鈕(submit)的表單(form)。 當用戶經過點擊 "Submit" 按鈕提交表單數據時, 表單數據將發送至<form>標籤中 action 屬性中指定的腳本文件。 在這個實例中,咱們指定文件來處理表單數據。若是你但願其餘的PHP文件來處理該數據,你能夠修改該指定的腳本文件名。 而後,咱們能夠使用超級全局變量 $_POST 來收集表單中的 input 字段數據
例:
<div class="box1">
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
Name: <input type="text" name="liangA">
<input type="submit">
</form>
<?php
$name = htmlspecialchars($_POST ['liangA']);
echo $name;
?>
</div>
5.$_GET 一樣被普遍應用於收集表單數據,在HTML form標籤的指定該屬性:"method="get"。$_GET 也能夠收集URL中發送的數據。