我有一个我想要 JSON 编码的 PHP 数据结构。它可以包含许多空数组,其中一些需要编码为数组,而另一些需要编码为对象。
例如,假设我有这个数据结构:
$foo = array(
"bar1" => array(), // Should be encoded as an object
"bar2" => array() // Should be encoded as an array
);
我想将其编码为:
{
"bar1": {},
"bar2": []
}
但是如果我使用json_encode($foo, JSON_FORCE_OBJECT)
我会得到对象:
{
"bar1": {},
"bar2": {}
}
如果我使用json_encode($foo)
,我将得到数组:
{
"bar1": [],
"bar2": []
}
有没有办法对数据进行编码(或定义数组),所以我得到混合数组和对象?