PHP JSON数组对象添加0作为键

时间:2019-06-18 15:52:25

标签: php json

更新的问题

这是我的课程...

class EbayItem
{
    public $ebayItemId;
}

在我的foreach循环之前,我有以下内容:

$mainResponse = array();
$mainResponse = [
    [
        "ack" => "success",
    ],
    "result" => []
    ];

在循环中,我有...

$ebayItem = new EbayItem();
$ebayItem->ebayItemId = $itemId;
array_push($mainResponse['result'], $ebayItem);

在我循环后,我就...

echo json_encode($mainResponse);

这将产生以下内容:

{"0":{"ack":"success"},"result":[{"ebayItemId":{"0":"153532419741"}}]}

我需要它来生产...

{"ack": "success","result": [{"ebayItemId": "153532419741","ebayItemTitle": "..."}]}

1 个答案:

答案 0 :(得分:1)

你不能。


type myhandler struct{}

func (m myhandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {}

func main() {
    // non-pointer struct value implements http.Handler:
    http.Handle("/", myhandler{})
}

这是无效的JSON。

  • 对象([{"ack":"success"},"result": [{"ItemId":153532419741,...},{...}]] )包含{}对。
  • 数组("key": value)包含值的有序列表。

数组中不能有键([])。


重新编辑:

"result"

在没有对象的键的情况下也无法获得值。