php json格式化输出:

1.json格式是适用于多种语言的数据格式,通用性高

2.在php中将array格式的数据转化为json格式

3.默认情况下转化后的json格式为一个串,需要将这个串格式化成相应的样式输出

主要的函数: json_encode()

通常使用中都是直接使用,传入一个参数,就能实现转化为json格式,但没有注意还有其他参数,以及其他参数的功能

PHP手册中相关说明的位置:http://php.net/manual/zh/function.json-encode.php

第二个参数可能的值为: 

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_PRETTY_PRINT :

//有一个数组:
  $array = [
      'name' => 'zqunor',
      'job' =>'it',
      'addr'=>'shanghai'
  ];
 
//只转化为json格式,不格式化样式
$result = json_encode($array);
 
//转化为json格式,并格式化样式
$result_pretty = json_encode($array,JSON_PRETTY_PRINT);echo $result;echo $result_pretty;

最终结果:

//$result对应的输出:
{"name":"zqunor","job":"it","addr":"shanghai"}
 
//$result_pretty对应的输出:
{
  "name":"zqunor",
  "job":"it",
  "addr":"shanghai"
}

这样,就可以看到格式化后的显示效果。

json_encode()
/*
     第二个参数可能的值为: 
    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_UNESCAPED_UNICODE JSON_PRETTY_PRINT 两种
json_encode(['code' => 500,'msg' => '请检查您的参数!'],JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT)

//打印结果为:

{
    "code": 500,
    "msg": "请检查您的参数!"
}

 

发表评论

后才能评论