PHP json_encode - JSON_FORCE_OBJECT objeto mixto y salida de matriz

Tengo una estructura de datos PHP que quiero codificar JSON. Puede contener una serie de matrices vacías, algunas de las cuales deben codificarse como matrices y otras deben codificarse como objetos.

Por ejemplo, digamos que tengo esta estructura de datos:

$foo = array(
  "bar1" => array(), // Should be encoded as an object
  "bar2" => array() // Should be encoded as an array
);

Me gustaría codificar esto en:

{
  "bar1": {},
  "bar2": []
}   

Pero si yo usojson_encode($foo, JSON_FORCE_OBJECT) Conseguiré objetos como:

{
  "bar1": {},
  "bar2": {}
}

Y si usojson_encode($foo) Obtendré arreglos como:

{
  "bar1": [],
  "bar2": []
}

¿Hay alguna forma de codificar los datos (o definir las matrices) para obtener matrices y objetos mixtos?

Respuestas a la pregunta(3)

Su respuesta a la pregunta