• 技术文章 >后端开发 >PHP问题

    php接受post传值的方法

    (*-*)浩(*-*)浩2019-09-09 11:54:00原创1992
    这段时间在研究php的接口,利用jmeter模拟发送数据给php服务器,看php如何接收post传输过去的数据,遇到了几个问题,经过一番度娘之后终于有所理解,记录一下:

    这里记录常用的两种post方式

    第一种:

    content-type为application/x-www-form-urlencoded,这是post默认的数据格式,在使用jquery的ajax来post数据的时候默认就是这种方式,这种方式传输的数据形式为:username=admin&password=123456。(推荐学习:PHP编程从入门到精通

    在服务器接收的时候就是使用最常用的$_POST方式,获取username则采用$_POST['username']即可正常获取。

    第二种:

    这种方式研究了好半天才发现怎么接收和处理其中的数据,content-type为application/json,在php中是无法直接对application/json的数据格式用$_POST方式接收的。application/json格式的数据类型为:

    {
    "username":"admin",
    "password":"123455"
    }

    对于这种post给服务器的数据类型,在php中需要通过‘php://input'原生接收数据类型(post传输过去的数据方式),然后再用json_encode解析,之后才能操作,php代码为:

    $raw_post_data = file_get_contents('php://input');
    $arr = json_decode($raw_post_data,true);
    echo $arr['username'];

    至此,才可以获取application/x-www-form-urlencoded格式数据一样,通过$_POST['username']获取到application/json数据的格式。

    以上就是php接受post传值的方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:php
    上一篇:php随机数原理 下一篇:做网站用php还是python
    线上培训班

    相关文章推荐

    • php中数据库怎么设计• php中数组的类型有哪些• php中单引号和双引号区别• php中文截取无乱码函数

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网