$ar = array("word" => "中文","test"=>array(),'aaa'=>"4");
echo json_encode($ar,JSON_UNESCAPED_UNICODE | JSON_FORCE_OBJECT | JSON_NUMERIC_CHECK | JSON_PRETTY_PRINT);
{ "word": "中文", "test": {}, "aaa": 4 }
string json_encode ( mixed $value
[, int $options
= 0 [, int $depth
= 512 ]] )
-
options
-
由以下常量组成的二进制掩码:
JSON_HEX_QUOT
,JSON_HEX_TAG
,JSON_HEX_AMP
,JSON_HEX_APOS
,JSON_NUMERIC_CHECK
,JSON_PRETTY_PRINT
,JSON_UNESCAPED_SLASHES
,JSON_FORCE_OBJECT
,JSON_PRESERVE_ZERO_FRACTION
,JSON_UNESCAPED_UNICODE
,JSON_PARTIAL_OUTPUT_ON_ERROR
。 关于 JSON 常量详情参考JSON 常量页面。
-
JSON_HEX_TAG
(integer) -
所有的 < 和 > 转换成 \u003C 和 \u003E。 自 PHP 5.3.0 起生效。
-
JSON_HEX_AMP
(integer) -
所有的 & 转换成 \u0026。 自 PHP 5.3.0 起生效。
-
JSON_HEX_APOS
(integer) -
所有的 ' 转换成 \u0027。 自 PHP 5.3.0 起生效。
-
JSON_HEX_QUOT
(integer) -
所有的 " 转换成 \u0022。 自 PHP 5.3.0 起生效。
-
JSON_FORCE_OBJECT
(integer) -
使一个非关联数组输出一个类(Object)而非数组。 在数组为空而接受者需要一个类(Object)的时候尤其有用。 自 PHP 5.3.0 起生效。
-
JSON_NUMERIC_CHECK
(integer) -
将所有数字字符串编码成数字(numbers)。 自 PHP 5.3.3 起生效。
-
JSON_BIGINT_AS_STRING
(integer) -
将大数字编码成原始字符原来的值。 自 PHP 5.4.0 起生效。
-
JSON_PRETTY_PRINT
(integer) -
用空白字符格式化返回的数据。 自 PHP 5.4.0 起生效。
-
JSON_UNESCAPED_SLASHES
(integer) -
不要编码 /。 自 PHP 5.4.0 起生效。
-
JSON_UNESCAPED_UNICODE
(integer) -
以字面编码多字节 Unicode 字符(默认是编码成 \uXXXX)。 自 PHP 5.4.0 起生效。