这两个函数比较简单,我这里直接写例子,但是有一点一定要注意,json数据只支持utf-8格式,GBK格式的数据转换为json会报错!

json_encode()用法:

<?php
$data =array(
‘name’=>’jianqingwang’,
‘sex’=>’man’,
‘title’=>’PHPER’,
‘location’=>’XiaMen’
);

$new_data =json_encode($data);

var_dump($data);
echo “<br><br>”;
var_dump($new_data);

得到的数据:

array(4) { [“name”]=> string(12) “jianqingwang” [“sex”]=> string(3) “man” [“title”]=> string(5) “PHPER” [“location”]=> string(6) “XiaMen” }

string(71) “{“name”:”jianqingwang”,”sex”:”man”,”title”:”PHPER”,”location”:”XiaMen”}”

json_decode()函数用来把json数组转换为数组的,用法如下:

json的数据为:{“status”:1,”data”:{“prefix”:134,”province”:”北京”,”city”:”北京”,”isp”:”移动”,”code”:10,”zipcode”:100000,”types”:”中国移动 GSM”,”mobile”:”13488888888″},”message”:”success”}

用json_decode转换后:

<?php
$data =file_get_contents('http://sj.apidata.cn/?mobile=13488888888');//获取接口的json数据
$new_data =json_decode($data);
var_dump($new_data);

得到如下结果:

object(stdClass)#1 (3) { [“status”]=> int(1) [“data”]=> object(stdClass)#2 (8) { [“prefix”]=> int(134) [“province”]=> string(6) “北京” [“city”]=> string(6) “北京” [“isp”]=> string(6) “移动” [“code”]=> int(10) [“zipcode”]=> int(100000) [“types”]=> string(16) “中国移动 GSM” [“mobile”]=> string(11) “13488888888” } [“message”]=> string(7) “success” }

很显然,我们转换json数据后得到一个对象,我们要怎么用它呢?

直接用

$new_data->data->isp//移动
$new_data->data->province//省份

这样的形式访问,为什么这样访问,我们看下它的数据结构就知道了

博客原文:数组转JSON函数json_encode和JSON转数组json_decode函数的使用方法

HP数组转JSON函数json_encode和JSON转数组json_decode函数的使用方法的更多相关文章

  1. ***php解析JSON二维数组字符串(json_decode函数第二个参数True和False的区别)

    客户端的请求体中的数据:[{"msg_id": 1, "msg_status": "HAS_READ" }, { "msg_id& ...

  2. JSON:json_encode函数不能获取属性原因及解决方案

    json_encode()是个解析json数据的函数,但是这个函数可以有两个参数 形式: json_decode ( string  $json,  ture || false )   第一个参数传字 ...

  3. Json处理函数json_encode json_decode

    json_decode — 对 JSON 格式的字符串进行编码 mixed json_decode ( string $json [, bool $assoc = false [, int $dept ...

  4. PHP json_decode 函数解析 json 结果为 NULL 的解决方法

    在做网站 CMS 模块时,对于模块内容 content 字段,保存的是 json 格式的字符串,所以在后台进行模块内容的编辑操作 ( 取出保存的数据 ) 时,需要用到 json_decode() 函数 ...

  5. JS解析json数据并将json字符串转化为数组的实现方法

    json数据在ajax实现异步交互时起到了很重要的作用,他可以返回请求的数据,然后利用客户端的js进行解析,这一点体现出js的强大,本文介绍JS解析json数据并将json字符串转化为数组的实现方法, ...

  6. php json_encode转JSON 编码显示中文

    对变量进行 JSON 编码显示中文 /**context":"/u2345/u43245/u2345 转成中文显示 * 对变量进行 JSON 编码[{"time" ...

  7. PHP为JSON数据的API返回空数组或者空对象

    在使用 JSON 作为 API 数据 Content-Type 的时候,会有这样一个问题: 如何返回一个空对象和一个空数组? 使用:json_encode(array())   得到JSON结果:[] ...

  8. jQuery的ajax的post请求json格式无法上传空数组

    问题描述:在和后端对接时,使用jquery的ajax的post方式向后端传递一序列约定好格式的对象数组.遇到了一个现象:如果对象中的数组是空数组,那么在请求参数中是不会出现的. 以下是数据的对比:   ...

  9. spring boot:接收数组参数及多文件混合json参数(spring boot 2.3.4)

    一,生产环境中的复杂参数上传的场景 1,保存排序值 : 例如:某一件商品的多张展示图片排序,提交的排序值要和图片的id相对应 2,上传多张图片,图片要和指定的变量相对应 例如:在添加商品sku时, 需 ...

随机推荐

  1. XPath Checker 和 firebug 插件使用

    安装插件: 1.firebug 2.FirePath 3.xpath finder 4.XPath Checker XPath Checker 下载安装 https://addons.mozilla. ...

  2. iOS开发之XMPPFramework开发基础介绍

    1 使用iPhoneXMPP实例 2 修改xmppstream设置 3 基础协议的介绍 协议 协议简介 XEP-0009 在两个XMPP实体间传输XML-RPC编码请求和响应 XEP-0006 使能与 ...

  3. Oracle数据库创建表ID字段的自动递增

    转载地址:http://blog.itpub.net/22880668/viewspace-1117343/ 将表t_uaer的字段ID设置为自增:(用序列sequence的方法来实现) ----创建 ...

  4. PHP之PDO_MYSQL扩展安装步骤

    转载地址:http://www.cnblogs.com/qq78292959/p/4084868.html 看到CakePHP文档要求安装pdo_mysql扩展,于是就尝试安装了一下. 这里我的系统是 ...

  5. 学Git,用Git ②

    之前介绍了git的最核心功能游戏存档式的本地版本管理.这会我们介绍git剩下的两个核心功能:分支和远程仓库. 1.Git游戏存档进化版--Git分支 git分支的思想很有意思,git允许我们可以随时从 ...

  6. 【vim】几种模式的切换

    很多初学者启动vim后,不知道怎么输入字符:按了半天字母,结果屏幕还是空的. vim和记事本或WORD不一样,不是一打开后就可以输入文字,此时它处于正常模式. vim一共有4个模式: 正常模式 (No ...

  7. 【前端】display: box布局教程 [转]

    css display:box 新属性   一.display:box; 在元素上设置该属性,可使其子代排列在同一水平上,类似display:inline-block;. 二.可在其子代设置如下属性 ...

  8. vim寄存器与复制粘贴的实现

    对于大多数在Ubuntu下使用vim作为常用编辑器的同学来讲,他们遇到的第一个比较大的麻烦来自于vim与外部应用的复制粘贴. 当然,愿意选择ubuntu以及vim的同学肯定是google好手.不幸的是 ...

  9. java中枚举类的实际应用

    知识点:在Java中,使用枚举类,当遇到实例类型有限的类时,并且数据库中用状态码代表一种含义时,如星期,性别,员工登陆某系统的状态等等, 可以考虑使用枚举类 本例子可以仿照,也可以使用自定义的类型处理 ...

  10. MATLAB 图形图像处理

    theme: MATLAB author: pprp date: 2018/2/2 --- MATLAB 图形图像处理 二维绘图命令 plot 线性空间 plot(t,[x1,x2,x3]) : 在同 ...