來自外部來源的 PHP 變數


簡介

PHP 的變數名稱空間由外部來源填充,例如 HTML 表單元素、cookie 和影像提交按鈕的螢幕座標

HTML 表單元素

當網頁將其 HTML 表單中的資料提交到 PHP 指令碼時,它會自動以 $_POST、$_GET 和 $_REQUEST 變數的形式提供給指令碼。以下是一個典型的 HTML 表單

<form action="testscript.php" method="POST">
   <input type="text" name="name">
   <input type="text" name="age">
   <input type ="submit" valaue="submit">
</form>

使用者輸入的資料在 PHP 指令碼中填充為 $_POST 關聯陣列

<?php
echo "Name : " . $_POST["name"] . "<br>";
echo "Age : " . $_POST["age"];
?>

將 HTML 頁面與 testscript.php 一起放在文件根目錄中。在瀏覽器中開啟它並輸入資料

Name : xyz
Age : 20

在 HTML 表單中使用 method='GET' 會導致使用 HTTP GET 方法請求 action 屬性中的 URL。表單中的資料填充在 $_GET 陣列中。$_REQUEST 陣列提供 $_GET、$_POST 和 $_COOKIE 預定義變數的內容。例如,名為 'age' 的表單元素中的資料將作為 $_GET['age'] 和 $_REQUEST['age'] 提供

影像按鈕座標

在標準提交按鈕中,HTML 允許使用任何影像作為帶有影像輸入型別的按鈕

<input type="image" src="image.gif" name="sub" />

在這種情況下,當用戶點選影像時,螢幕尺寸的 x 和 y 座標也會作為請求傳送,並且可以作為 $_POST['sub_x'] 和 $_POST['sub_y'] 訪問

Cookie 變數

PHP 支援 cookie 的儲存和檢索機制。Cookie 是伺服器在傳送響應時儲存在客戶端計算機中的資料。客戶端的每次後續請求都會將 cookie 與請求的引數(如 HTML 表單元素)一起傳送回。PHP 使用 Setcookie() 函式儲存 cookie。Cookie 在 $_COOKIE 陣列中讀取。以下是一個簡單的示例

示例

<?php
if (isset($_COOKIE['name']) && isset($_COOKIE['age'])) {
   echo "Name:" .$_COOKIE['name'] . " age:" .$_COOKIE['age'];
}
setcookie('name', 'XYZ');
setcookie('age', 20);
?>

當第一次從瀏覽器呼叫上述指令碼時,會設定 cookie 名稱和年齡。隨後,它們會傳輸到伺服器的 $_COOKIE 陣列中,並顯示如下

輸出

Name:XYZ age:20

更新於: 2020-09-19

260 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告