冷知识,涨姿势 - 优化JSON输出

  • 作者:KK

  • 发表日期:2017.10.28


问题在哪里

平时调用 json_encode 函数的时候,结果会返回一个JSON字符串,长这样:

这样有两个问题:

  1. 整个JSON内容堆成一堆,结构不好识别

  2. 里面的中文内容被转义成Unicode字符表示法了,则这些中文内容我们无法直接阅读理解

为了解决这两个问题,菜鸟们总会复制这段JSON到JSON美化工具上排版一下


优化输出

所以重点就在 json_encode 的第2个参数,传入JSON_PRETTY_PRINT ^ JSON_UNESCAPED_UNICODE就能实现美化排版并取消中文Unicode转码了

如果你想亲自体验一把,请复制以下测试代码:

$data = [
	'title' => '美丽的世界',
	'content' => 'Apple(苹果公司)since 哪个年代?',
	'options' => [
		[
			'content' => '1966年',
			'is_answer' => false,
		],
		[
			'content' => '1972年',
			'is_answer' => false,
		],
		[
			'content' => '1977年',
			'is_answer' => false,
		],
		[
			'content' => '1976年',
			'is_answer' => true,
		],
	]
];

echo '<pre>';
echo json_encode($data, JSON_PRETTY_PRINT ^ JSON_UNESCAPED_UNICODE);
echo '</pre>';