📜  PHP-GET和POST方法

📅  最后修改于: 2020-10-21 05:08:27             🧑  作者: Mango


浏览器客户端可以通过两种方式将信息发送到Web服务器。

  • GET方法
  • POST方法

在浏览器发送信息之前,它将使用称为URL编码的方案对其进行编码。在此方案中,名称/值对以等号连接,而不同的对之间用&分隔。

name1=value1&name2=value2&name3=value3

空格将被删除并用+字符替换,而其他任何非字母数字字符都将用十六进制值替换。信息编码后,将其发送到服务器。

GET方法

GET方法发送附加到页面请求的已编码用户信息。页面和编码信息由分隔字符。

http://www.test.com/index.htm?name1=value1&name2=value2
  • GET方法生成一个长字符串,该字符串出现在服务器日志中的浏览器的“位置:”框中。

  • GET方法仅限发送最多1024个字符。

  • 如果您有密码或其他敏感信息要发送到服务器,请不要使用GET方法。

  • GET不能用于将二进制数据(例如图像或Word文档)发送到服务器。

  • GET方法发送的数据可以使用QUERY_STRING环境变量进行访问。

  • PHP提供了$ _GET关联数组,以使用GET方法访问所有已发送的信息。

通过将源代码放入test.php脚本来尝试以下示例。

";
      echo "You are ". $_GET['age']. " years old.";
      
      exit();
   }
?>

   
   
      
Name: Age:

它将产生以下结果-

形式

POST方法

POST方法通过HTTP标头传输信息。该信息按照GET方法的说明进行编码,然后放入称为QUERY_STRING的标头中。

  • POST方法对要发送的数据大小没有任何限制。

  • POST方法可用于发送ASCII以及二进制数据。

  • POST方法发送的数据通过HTTP标头,因此安全性取决于HTTP协议。通过使用安全HTTP,可以确保您的信息安全。

  • PHP提供了$ _POST关联数组,以使用POST方法访问所有已发送的信息。

通过将源代码放入test.php脚本来尝试以下示例。

";
      echo "You are ". $_POST['age']. " years old.";
      
      exit();
   }
?>

   
   
      
Name: Age:

它将产生以下结果-

形式

$ _REQUEST变量

PHP $ _REQUEST变量包含$ _GET,$ _ POST和$ _COOKIE的内容。当我们解释cookie时,我们将讨论$ _COOKIE变量。

PHP $ _REQUEST变量可用于从通过GET和POST方法发送的表单数据中获取结果。

通过将源代码放入test.php脚本来尝试以下示例。

";
      echo "You are ". $_REQUEST['age']. " years old.";
      exit();
   }
?>

   
      
      
Name: Age:

$ _PHP_SELF变量包含其中被调用的自脚本的名称。

它将产生以下结果-

形式