PHP 中的 POST 和原始 POST 之间有什么区别?

编程入门 行业动态 更新时间:2024-10-11 21:31:54
本文介绍了PHP 中的 POST 和原始 POST 之间有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

阅读答案后我有这个问题 这里,有什么区别?

I have this question after reading the answer here, what's the difference at all?

是否可以使用 html 提交原始 POST ?

Is it possible to submit raw POST with html ?

推荐答案

我们可以将表单提交分为三种情况:

We can divide form submissions in three cases:

  • 内容类型为 application/x-www-form-urlencoded 的提交
  • 内容类型为 multipart/form-data
  • 的提交
  • 其他提交.
  • 在情况 1 和 3 中,$HTTP_RAW_POST_DATA 包含原始帖子数据(除非选项是 always_populate_raw_post_data 设置为 false,在这种情况 $HTTP_RAW_POST_DATA 在情况 1) 中为空,即数据与客户端(通常是浏览器)发送的数据完全相同.在第 1 种情况下,数据的形式如

    In cases 1 and 3, $HTTP_RAW_POST_DATA contains the raw post data (except if the option is always_populate_raw_post_data is set to false, in which case $HTTP_RAW_POST_DATA is empty in case 1), i.e., the data exactly as the client (usually the browser) has sent it. In case, 1, the data has a form such as

    key1=value1&key2=value2&key3[]=value3.1&key3[]=value3.2

    PHP 自动解析这个,所以 $_POST 变成:

    PHP automatically parses this, so that $_POST becomes:

    $_POST = array( "key1" => "value1", "key2" => "value2", "key3" => array("value3.1", "value3.2"); )

    原始数据的内容也可以通过php://input访问,即使在always_populate_raw_post_data设置为false的情况1>.尤其是,file_get_contents("php://input") 给出了 $HTTP_RAW_POST_DATA 已经或应该拥有的相同数据.

    The contents of the raw data can also be access through php://input, even in case 1 when always_populate_raw_post_data is set to false. In particular, file_get_contents("php://input") gives the same data $HTTP_RAW_POST_DATA has or would have.

    在情况 3 中,POST 数据是任意的,$_POST 将是一个空数组,并且 $HTTP_RAW_POST_DATA 将始终被填充.

    In case 3, in which the POST data is arbitrary, $_POST will be an empty array and $HTTP_RAW_POST_DATA will always be populated.

    案例 2 是一个特殊的案例.在这种情况下,PHP 将解析数据,$_POST 将获取不是上传文件的字段的内容,而是 php://input 和 $HTTP_RAW_POST_DATA 将不可用.

    Case 2 is a special one. In that case, PHP will parse the data and $_POST will get the content of the fields which are not uploaded files, but php://input and $HTTP_RAW_POST_DATA will be unavailable.

    更多推荐

    PHP 中的 POST 和原始 POST 之间有什么区别?

    本文发布于:2023-10-10 21:24:45,感谢您对本站的认可!
    本文链接:https://www.elefans.com/category/jswz/34/1479789.html
    版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
    本文标签:有什么区别   原始   PHP   POST

    发布评论

    评论列表 (有 0 条评论)
    草根站长

    >www.elefans.com

    编程频道|电子爱好者 - 技术资讯及电子产品介绍!