我正在向基于GO的API提交JSON请求,这需要发送空值,如下所示:
...
"Data": {
"values": {}
},
...
我正在使用json_enocde($ mydata)将PHP数组转换为JSON,其返回值为:
<?php
$mydata = array(
'Data' => array(
'values' => array()
)
);
$mydata = json_encode($mydata);
//outputs
"Data": {
"values": []
},
如何获取{}
而不是[]
符号。目前,我正在使用下面的技巧,以{}
替换空数组值符号。
$mydata = str_replace('[]','{}',$mydata);
答案 0 :(得分:0)
[]-是一个数组,但是{}-是一个对象,因此请更改它:
<?php
$mydata = array(
'Data' => array(
'values' => new \stdClass()
)
);
$mydata = json_encode($mydata);
echo $mydata;
输出
{"Data":{"values":{}}}