类别:PHP问题 / 日期:2019-11-27 / 浏览:213 / 评论:0

这段时刻在研讨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传值的要领的细致内容,更多请关注ki4网别的相干文章!

打赏

感谢您的赞助~

打开支付宝扫一扫,即可进行扫码打赏哦~

版权声明 : 本文未使用任何知识共享协议授权,您可以任何形式自由转载或使用。

 可能感兴趣的文章