美文网首页
encode()和decode()区别

encode()和decode()区别

作者: 左耳击水兽 | 来源:发表于2016-11-13 16:25 被阅读0次

一、json_encode()

  • 将PHP的数据结构转换成JOSN
  • 代码1
<?php$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echo json_encode($arr);?>
  • 结果
{"a":1,"b":2,"c":3,"d":4,"e":5}
  • 代码2
$obj->body           = 'another post';
$obj->id             = 21;
$obj->approved       = true;
$obj->favorite_count = 1;
$obj->status         = NULL;
echo json_encode($obj);
  • 结果
{
   "body":"another post",
   "id":21,
   "approved":true,
   "favorite_count":1,
   "status":null
 }

二、json_decode()

  • 将json文本转换为相应的PHP数据结构

    • 代码1
$json = '{"foo": 12345}';
$obj = json_decode($json);
print $obj->{'foo'}; // 12345
  • 代码2
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump(json_decode($json));
  • 结果
object(stdClass)#1 (5) {
 
  ["a"] => int(1)
  ["b"] => int(2)
  ["c"] => int(3)
  ["d"] => int(4)
  ["e"] => int(5)
 
}
  • 如果想要强制生成PHP关联数组,json_decode()需要加一个参数true:

    • 代码
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; 
var_dump(json_decode($json,true));
  • 结果
array(5) {   ["a"] => int(1)  
                      ["b"] => int(2)  
                      ["c"] => int(3)   
                          ["d"] => int(4)  
                       ["e"] => int(5)}

相关文章

网友评论

      本文标题:encode()和decode()区别

      本文链接:https://www.haomeiwen.com/subject/ktecpttx.html