+
81
-

PHP json_encode的空数组如何变成空对象

php
最近用php写一个接口的时候,在有值的时候json_encode返回的是数组,但是[]空数组json_encode后变成空对象{},有没有办法将php中空数组json_encode后变成空对象?

高手回复

+
1
-

1、直接用(object)$arr 即可解决

$result = array(
  "arr1" => (object)array(), 
  "arr2" => array() 

);

echo json_encode($result );// {"arr1":{}, "arr2":[]}

2、还有一个办法就是给json_encode()添加参数JSON_FORCE_OBJECT,如下

json_encode($result ,JSON_FORCE_OBJECT)得到的是
{
  "arr1": {},
  "arr2": {}
}
by bfwui
我知道答案,我要回答