php 美化json,[PHP]JSON数据美化
在写一个API接口的时候,使用 json 数据返给前端使用..PHP使用时json_encode函数
$arr = [
汉字 => 这是一段汉字,
en => this is en,
1 => 12345689,
arr => [
key => value,
],
];
echo json_encode($arr);
输出之后是这样的.
这种并不是标准的 JSON,因为你没告诉浏览器这是 JSON 数据,浏览器默认以 html 输出了.那么我们加上.
// 告诉浏览器我是 JSON
header(content-type:application/json;charset=utf-8);
$arr = [
汉字 => 这是一段汉字,
en => this is en,
1 => 12345689,
arr => [
key => value,
],
];
echo json_encode($arr);
中文汉字会被编码.也不是很好看.
在这里我们使用:JSON_UNESCAPED_UNICODE和JSON_PRETTY_PRINT
如:
// 告诉浏览器我是 JSON
header(content-type:application/json;charset=utf-8);
$arr = [
汉字 => 这是一段汉字,
en => this is en,
1 => 12345689,
arr => [
key => value,
// 在这我加一个网址
url=>https://blog.kieng.cn/,
],
];
echo json_encode($arr);
好看了吧?
但是又发现 /会被自动变为/,咋办呢?我们使用stripslashes删除反斜线函数
// 告诉浏览器我是 JSON
header(content-type:application/json;charset=utf-8);
$arr = [
汉字 => 这是一段汉字,
en => this is en,
1 => 12345689,
arr => [
key => value,
// 在这我加一个网址
url => https://blog.kieng.cn/,
],
];
echo stripslashes(json_encode($arr, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT));
完美了吧?每次都写费劲.直接写个方法把
function jsonm($data) {
header(content-type:application/json;charset=utf-8);
return stripslashes(json_encode($data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT));
}
jsonm([code=>1,msg=>OJ8K]);
~谢谢打赏~
赏
在写一个API接口的时候,使用 json 数据返给前端使用..PHP使用时json_encode函数 $arr = [ 汉字 => 这是一段汉字, en => this is en, 1 => 12345689, arr => [ key => value, ], ]; echo json_encode($arr); 输出之后是这样的. 这种并不是标准的 JSON,因为你没告诉浏览器这是 JSON 数据,浏览器默认以 html 输出了.那么我们加上. // 告诉浏览器我是 JSON header(content-type:application/json;charset=utf-8); $arr = [ 汉字 => 这是一段汉字, en => this is en, 1 => 12345689, arr => [ key => value, ], ]; echo json_encode($arr); 中文汉字会被编码.也不是很好看. 在这里我们使用:JSON_UNESCAPED_UNICODE和JSON_PRETTY_PRINT 如: // 告诉浏览器我是 JSON header(content-type:application/json;charset=utf-8); $arr = [ 汉字 => 这是一段汉字, en => this is en, 1 => 12345689, arr => [ key => value, // 在这我加一个网址 url=>https://blog.kieng.cn/, ], ]; echo json_encode($arr); 好看了吧? 但是又发现 /会被自动变为/,咋办呢?我们使用stripslashes删除反斜线函数 // 告诉浏览器我是 JSON header(content-type:application/json;charset=utf-8); $arr = [ 汉字 => 这是一段汉字, en => this is en, 1 => 12345689, arr => [ key => value, // 在这我加一个网址 url => https://blog.kieng.cn/, ], ]; echo stripslashes(json_encode($arr, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT)); 完美了吧?每次都写费劲.直接写个方法把 function jsonm($data) { header(content-type:application/json;charset=utf-8); return stripslashes(json_encode($data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT)); } jsonm([code=>1,msg=>OJ8K]); ~谢谢打赏~ 赏