📜  如何在PHP中获取通过 post 方法发送的信息?(1)

📅  最后修改于: 2023-12-03 15:24:33.659000             🧑  作者: Mango

如何在 PHP 中获取通过 POST 方法发送的信息?

当用户使用 POST 方法提交表单或上传文件时,PHP 可以通过 $_POST$_FILES 全局变量获取相应的信息。

获取 POST 方法的信息

PHP 提供了 $_POST 变量用于获取通过 POST 方法提交的表单数据。这些表单数据可以是文本、数字或数组等类型。

例如,以下代码片段演示了如何获取 nameemail 表单字段的值:

$name = $_POST["name"];
$email = $_POST["email"];

注意,必须确保会话中已经启用了 $_POST 变量。可以通过检查 $_SERVER 数组中的 REQUEST_METHOD 来检查表单是否已经提交:

if ($_SERVER["REQUEST_METHOD"] == "POST") {
  // 处理表单数据
}
获取上传的文件

如果表单包括文件上传,则需要使用 $_FILES 变量来获取上传的文件信息。

以下代码演示了如何获取上传文件的名称、类型、大小和临时文件名:

$name = $_FILES["file"]["name"];
$type = $_FILES["file"]["type"];
$size = $_FILES["file"]["size"];
$tmp_name = $_FILES["file"]["tmp_name"];

需要在表单标记中添加 enctype="multipart/form-data" 属性来启用文件上传:

<form method="post" enctype="multipart/form-data">
  <input type="file" name="file">
  <input type="submit" value="Upload">
</form>

注意,使用 $_FILES 变量时需要访问服务器上的临时文件。上传的文件必须在临时文件夹中保存,存储在该文件夹中的文件会在脚本完成时自动删除。如果需要保留上传的文件,请移动到另一个位置。

move_uploaded_file($tmp_name, "uploads/" . $name);

以上代码将上传文件从临时位置移动到名为 uploads 的文件夹中。

总结

在 PHP 中获取通过 POST 方法发送的信息很简单。只需检查 $_SERVER["REQUEST_METHOD"] 变量并使用 $_POST$_FILES 变量来获取相应的信息即可。请注意,处理上传文件时需要额外的注意事项。