首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用PHP接收JSON POST

使用PHP接收JSON POST
EN

Stack Overflow用户
提问于 2013-09-18 15:47:45
回答 7查看 546.8K关注 0票数 364

我正在尝试接收一个支付接口网站上的JSON帖子,但我无法解码。

当我打印时:

代码语言:javascript
复制
echo $_POST;

我得到了:

代码语言:javascript
复制
Array

当我尝试这样做时,我什么也得不到:

代码语言:javascript
复制
if ( $_POST ) {
    foreach ( $_POST as $key => $value ) {
        echo "llave: ".$key."- Valor:".$value."<br />";
    }
}

当我尝试这样做时,我什么也得不到:

代码语言:javascript
复制
$string = $_POST['operation'];
$var = json_decode($string);
echo $var;

当我尝试这样做时,我得到了NULL:

代码语言:javascript
复制
$data = json_decode( file_get_contents('php://input') );
var_dump( $data->operation );

当我这样做的时候:

代码语言:javascript
复制
$data = json_decode(file_get_contents('php://input'), true);
var_dump($data);

我得到了:

代码语言:javascript
复制
NULL

JSON格式为(根据支付站点文档):

代码语言:javascript
复制
{
   "operacion": {
       "tok": "[generated token]",
       "shop_id": "12313",
       "respuesta": "S",
       "respuesta_details": "respuesta S",
       "extended_respuesta_description": "respuesta extendida",
       "moneda": "PYG",
       "monto": "10100.00",
       "authorization_number": "123456",
       "ticket_number": "123456789123456",
       "response_code": "00",
       "response_description": "Transacción aprobada.",
       "security_information": {
           "customer_ip": "123.123.123.123",
           "card_source": "I",
           "card_country": "Croacia",
           "version": "0.3",
           "risk_index": "0"
       }
    }
}

支付网站日志显示一切正常。有什么问题吗?

EN

回答 7

Stack Overflow用户

发布于 2016-09-15 18:07:07

例如,如果您已经将参数设置为$_POST‘’eg‘,并且不希望更改它,则只需如下所示:

代码语言:javascript
复制
$_POST = json_decode(file_get_contents('php://input'), true);

这将省去您将所有$_POST更改为其他内容的麻烦,并允许您仍然发出正常的post请求,如果您希望删除此行。

票数 113
EN

Stack Overflow用户

发布于 2014-03-26 21:11:01

使用$HTTP_RAW_POST_DATA而不是$_POST

它将为您提供原样的POST数据。

稍后您将能够使用json_decode()对其进行解码。

票数 37
EN

Stack Overflow用户

发布于 2018-06-18 04:04:19

代码语言:javascript
复制
$data = file_get_contents('php://input');
echo $data;

这对我很有效。

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18866571

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档