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://127.0.0.1/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://127.0.0.1/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
广告