page contents

php接受post传值的方法

以下内容希望帮助到大家!

attachments-2020-04-LXxMQpd65e8d7b8ee18a9.jpg

常用的两种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数据的格式。


attachments-2020-04-ChBdX6tZ5e8d7ba128159.jpg

  • 发表于 2020-04-08 15:22
  • 阅读 ( 436 )
  • 分类:PHP开发

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
Pack
Pack

1135 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1316 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章