Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何接收发布的json编码字符串并将其提取到php变量中_Php_Json_Api - Fatal编程技术网

如何接收发布的json编码字符串并将其提取到php变量中

如何接收发布的json编码字符串并将其提取到php变量中,php,json,api,Php,Json,Api,我将如何接受json数据 { "ccToken": "75676576765", "cardType": "CC", } 它将发布在我的url中,并将值存储在变量中,如 $ccToken=“7567656765” cardType=“CC” 我可能听起来像垃圾。我只是新来的,所以我不知道如何接受发布在url上的json字符串。通常如果它是变量,我可以接受它 $ccToken=$_POST['ccToken'] 但是为了这件事。 如何才能发送像..200这样的响应作为回报?假设您的整个帖子

我将如何接受json数据

{
"ccToken": "75676576765",
"cardType": "CC",   
}
它将发布在我的url中,并将值存储在变量中,如

$ccToken=“7567656765” cardType=“CC”

我可能听起来像垃圾。我只是新来的,所以我不知道如何接受发布在url上的json字符串。通常如果它是变量,我可以接受它

$ccToken=$_POST['ccToken']

但是为了这件事。
如何才能发送像..200这样的响应作为回报?

假设您的整个帖子正文是一个JSON字符串,您需要从正文中提取并解码整个JSON:

 $raw_post_body = file_get_contents('php://input'); 
 $data_object = json_decode($raw_post_body);
然后您可以访问json解码的$data_对象,如:

 echo  $data_object->ccToken;

使用javascript JSON.stringify()方法

以及php json_decode()函数


如果发布到目前为止的代码可能会更容易,但在javascript中可以使用var json_str=json.stringify(obj);将javascript对象转换为json字符串。然后,您可以通过ajax或其他方式在php中发布(假设您将其作为称为数据的变量发布),您可以执行以下操作:$data=json_decode($_post['data']);然后你可以把它和print_r($data)一起输出,以确保一切按预期进行。你的问题不包括数据是如何发布的。请求主体是JSON格式的字符串还是表单数据?或者更具体地说,
application/json
application/x-www-form-urlencoded