首页 > 交互 > 正文

php常用获取post参数的方法

来源:疯狗科技  2017-11-21  点击:

浏览器的请求方式主要是get和post,在这里主要讲下获取post参数的几种常用方法。

最常见的方法是:

$_POST['paraname'];

$_POST是个数组,是post方法发送的变量名和变量值,

存放的是 PHP以key=>value的形式格式化以后的数据。

这是在进行web开法时最常用的方式,但此种方法有局限性,

只能接收Content-Type: application/x-www-form-urlencoded提交的数据,

我们必须通过一个表单(真实或模拟)来进行提交。

但是此种方式在进行接口(如给APP提供接口)开发时,就不是很方便了。

这个时候,使用:

file_get_contents(“php://input”);将会非常的便捷。

用PHP接收POST的任何数据都可以使用本方法。而不用考虑Content-Type。

注意:

也可以使用$HTTP_RAW_POST_DATA 来获取数据,

但是使用file_get_contents(“php://input”)给内存带来的压力较小,并且不需要任何特殊的 php.ini 设置。

但是不能用于 enctype=“multipart/form-data”。

这样的情况下$HTTP_RAW_POST_DATA默认没有填充,

比激活

always_populate_raw_post_data

潜在需要更少的内存。

但$GLOBALS['HTTP_RAW_POST_DATA']中

是否保存POST过来的数据取决于centent-Type的设置,

即POST数据时 必须显式示指明

Content-Type: application/x-www-form-urlencoded,

POST的数据才会存放到 $GLOBALS['HTTP_RAW_POST_DATA']中。

php://input是个可以访问请求的原始数据的只读流。

在微信中传递的是xml格式的数据以发送xml格式数据为例:

//接收POST数据

$data = file_get_contents(“php://input”);

//提取POST数据为simplexml对象

$xml = simplexml_load_string($data);

var_dump($xml);

这样一来,解析数据将会变得简洁,方便。


电脑访问:php常用获取post参数的方法
133-4920-4444
  返回首页 回到顶部  

微信

触屏版

电脑版