HP数组转JSON函数json_encode和JSON转数组json_decode函数的使用方法
这两个函数比较简单,我这里直接写例子,但是有一点一定要注意,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函数的使用方法的更多相关文章
- ***php解析JSON二维数组字符串(json_decode函数第二个参数True和False的区别)
客户端的请求体中的数据:[{"msg_id": 1, "msg_status": "HAS_READ" }, { "msg_id& ...
- JSON:json_encode函数不能获取属性原因及解决方案
json_encode()是个解析json数据的函数,但是这个函数可以有两个参数 形式: json_decode ( string $json, ture || false ) 第一个参数传字 ...
- Json处理函数json_encode json_decode
json_decode — 对 JSON 格式的字符串进行编码 mixed json_decode ( string $json [, bool $assoc = false [, int $dept ...
- PHP json_decode 函数解析 json 结果为 NULL 的解决方法
在做网站 CMS 模块时,对于模块内容 content 字段,保存的是 json 格式的字符串,所以在后台进行模块内容的编辑操作 ( 取出保存的数据 ) 时,需要用到 json_decode() 函数 ...
- JS解析json数据并将json字符串转化为数组的实现方法
json数据在ajax实现异步交互时起到了很重要的作用,他可以返回请求的数据,然后利用客户端的js进行解析,这一点体现出js的强大,本文介绍JS解析json数据并将json字符串转化为数组的实现方法, ...
- php json_encode转JSON 编码显示中文
对变量进行 JSON 编码显示中文 /**context":"/u2345/u43245/u2345 转成中文显示 * 对变量进行 JSON 编码[{"time" ...
- PHP为JSON数据的API返回空数组或者空对象
在使用 JSON 作为 API 数据 Content-Type 的时候,会有这样一个问题: 如何返回一个空对象和一个空数组? 使用:json_encode(array()) 得到JSON结果:[] ...
- jQuery的ajax的post请求json格式无法上传空数组
问题描述:在和后端对接时,使用jquery的ajax的post方式向后端传递一序列约定好格式的对象数组.遇到了一个现象:如果对象中的数组是空数组,那么在请求参数中是不会出现的. 以下是数据的对比: ...
- spring boot:接收数组参数及多文件混合json参数(spring boot 2.3.4)
一,生产环境中的复杂参数上传的场景 1,保存排序值 : 例如:某一件商品的多张展示图片排序,提交的排序值要和图片的id相对应 2,上传多张图片,图片要和指定的变量相对应 例如:在添加商品sku时, 需 ...
随机推荐
- python的socket网络编程(二)
(注:本文部分内容摘自互联网,由于作者水平有限,不足之处,还望留言指正.) 国庆八天假,已过去3天了,加上明天又是中秋,还是决定在今晚把之前想写的东西写完.国庆节在宁波老家,吃好喝好睡好,就是没有好好 ...
- intellij-idea+maven搭建scala环境
一 . 安装JDK 1. 下载地址: http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6 ...
- netty7---自定义序列化接口
package com.cn.core; import java.nio.ByteOrder; import java.nio.charset.Charset; import java.util.Ar ...
- JAVA面试题整理(3)-Spring
1.BeanFactory 和 FactoryBean? 2.Spring IOC 的理解,其初始化过程? 3.BeanFactory 和 ApplicationContext? 4.Spring B ...
- 学习Windows(BAT)、Linux(Shell)编程,并分别写一个脚本文件解决自己的一个问题
delete: @echo off echo Press any key to delete this file.pause del %0 ip: @echo off color a Title 端口 ...
- MR案例:小文件处理方案
HDFS被设计来存储大文件,而有时候会有大量的小文件生成,造成NameNode资源的浪费,同时也影响MapReduce的处理效率.有哪些方案可以合并这些小文件,或者提高处理小文件的效率呢? 1). 所 ...
- Spring Boot CRUD+分页(基于Mybatis注解方式)
步骤一:关于Mybatis Mybatis 是用来进行数据库操作的框架.其中分页使用Mybatis中的PageHelper插件. Mybatis与hibernate对比: 1.hibernate是一个 ...
- 基于Redis的限流系统的设计
本文讲述基于Redis的限流系统的设计,主要会谈及限流系统中限流策略这个功能的设计:在实现方面,算法使用的是令牌桶算法来,访问Redis使用lua脚本. 1.概念 In computer netw ...
- java代码实现JVM栈溢出,堆溢出
参考博客:http://www.cnblogs.com/tv151579/p/3647238.html 背景知识: 栈存放什么:栈存储运行时声明的变量——对象引用(或基础类型, primitive)内 ...
- .net 下的 HttpRuntime.Cache 应用
using System;using System.Collections.Generic;using System.Diagnostics;using System.Linq;using Syste ...
