PHP - $_REQUEST



在 PHP 中,$_REQUEST 是一個超全域性變數。它是一個關聯陣列,包含了 $_GET、$_POST 和 $_COOKIE 變數的內容。

  • “php.ini” 檔案中的設定決定了此變數的組成。

  • “php.ini” 中的一個指令是 request_order,它決定了 PHP 註冊 GET、POST 和 COOKIE 變數的順序。

  • 此陣列中變數的存在和順序根據 PHP 的 variables_order 定義。

  • 如果從命令列執行 PHP 指令碼,則 argcargv 變數不會包含在 $_REQUST 陣列中,因為它們的值取自 $_SERVER 陣列,而 $_SERVER 陣列又由 Web 伺服器填充。

使用 GET 方法的 $_REQUEST

將以下指令碼儲存到 Apache 伺服器的文件資料夾中。如果您在 Windows 上使用 XAMPP 伺服器,請將指令碼作為“hello.php”放在“c:/xampp/htdocs”資料夾中。

<html>
<body>
   <?php
      echo "<h3>First Name: " . $_REQUEST['first_name'] . "<br />" 
      . "Last Name: " . $_REQUEST['last_name'] . "</h3>";
   ?>
</body>
</html>

啟動 XAMPP 伺服器,並在瀏覽器視窗中輸入 https:///hello.php?first_name=Amar&last_name=Sharma 作為 URL。

您應該獲得以下 輸出

PHP $ Request 1

使用 POST 方法的 $_REQUEST

在文件根目錄下,將以下指令碼儲存為“hello.html”。

<html>
<body>
   <form action="hello.php" method="post">
      First Name: <input type="text" name="first_name" /> <br />
      Last Name: <input type="text" name="last_name" />
      <input type="submit" value="Submit" />
   </form>
</body>
</html>

在瀏覽器中,輸入 URL“https:///hello.html”。您應該在瀏覽器視窗中獲得類似的 輸出

PHP $ Request 2

您還可以將 PHP 程式碼嵌入到 HTML 指令碼中,並使用 PHP_SELF 變數將表單 POST 到自身:

<html>
<body>
   <form action="<?php echo $_SERVER['PHP_SELF'];?>" method="post">
      <p>First Name: <input type="text" name="first_name" /></p>
      <p>Last Name: <input type="text" name="last_name" /></p>
      <input type="submit" value="Submit" />
   </form>
   <?php
      if ($_SERVER["REQUEST_METHOD"] == "POST")
      echo "<h3>First Name: " . $_REQUEST['first_name'] . "<br />" 
      . "Last Name: " . $_REQUEST['last_name'] . "</h3>";
   ?>
</body>
</html>

這將產生以下 輸出

PHP $ Request 3
廣告