PHP 中 GET 和 POST 方法的区别

2024 年 8 月 29 日 | 阅读 2 分钟

浏览器客户端可以通过两种方式将数据传递给 Web 服务器。

  • GET 方法
  • POST 方法

在发送数据之前,浏览器会使用一种称为 URL 编码的方法对其进行加密。在此系统中,名称/值对用等号连接,而不同的对用与号分隔。空格被替换为 + 符号,任何其他非字母数字字符都被替换为十六进制值。数据编码后,将传输到服务器。

现在让我们分别看看这两种方法,了解它们的工作原理并理解它们。

GET 方法

A

GET 方法将编码的用户信息附加到页面请求中。? 字符将页面与编码内容分开。

  • GET 方法会生成一个长字符串,该字符串会显示在您的服务器日志和浏览器的“Location:”框中。
  • GET 方法最多只能发送 1024 个字符。
  • 如果您需要将密码或其他敏感信息发送到服务器,切勿使用 GET 方法。
  • GET 方法不能用于将二进制数据(如照片或 Word 文档)发送到服务器。
  • 可以使用 QUERY STRING 环境变量来获取 GET 方法发送的数据。
  • PHP 提供了一个关联数组 $_GET,用于访问通过 GET 方法发送的所有信息。

代码

POST 方法

POST 方法通过 HTTP 标头将数据发送到服务器。信息以 GET 方法指定的相同方式编码,并包含在名为 QUERY STRING 的标头中。

  • POST 方法对可以发送的数据量没有限制。
  • POST 方法允许您提交 ASCII 和二进制数据。
  • 由于通过 POST 方法提交的数据是通过 HTTP 标头路由的,因此安全性取决于 HTTP 协议。您可以通过使用安全 HTTP 来确保数据的安全。
  • PHP 提供了一个关联数组 $_POST,用于访问通过 POST 方法发送的所有信息。

代码