扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
首先你要把JSON数据转成数组,因为在php中JSON就是一个字符串。
创新互联是网站建设专家,致力于互联网品牌建设与网络营销,专业领域包括做网站、网站建设、电商网站制作开发、成都微信小程序、微信营销、系统平台开发,与其他网站设计及系统开发公司不同,我们的整合解决方案结合了恒基网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,且不断评估并优化我们的方案,为客户提供全方位的互联网品牌整合方案!
$jsonData = '{"list": [{
"goodsid": 4290,
"post": [{
"param": "uin",
"name": "账号"
}, {
"param": "goodsid",
"name": "商品ID"
}, {
"param": "number",
"name": "下单数量"
}]
}, ';
// 你的JSON数据有点乱,我复制的可能不对
$aryData = json_decode($jsonData, true); // 转码为数组
var_dump($aryData); // 打印
foreach ($aryData as $item) {
var_dump($item); // 打印每个条目
}
1、php 输出JSON格式,使用json_encode函数即可
2、示例:
?php
header('Content-type: text/json');
$fruits = array (
"fruits" = array("a" = "orange", "b" = "banana", "c" = "apple"),
"numbers" = array(1, 2, 3, 4, 5, 6),
"holes" = array("first", 5 = "second", "third")
);
echo json_encode($fruits);
?
示例得到结果:
{"fruits":{"a":"orange
本文实例讲述了PHP生成及获取JSON文件的方法。分享给大家供大家参考,具体如下:
首先定义一个数组,然后遍历数据表,把相应的数据放到数组中,最后通过json_encode()转化数组
json_encode()
函数的功能是将数值转换成
JSON
数据存储格式。
putjson.php:
?php
//
生成一个PHP数组
$data
=
array();
$data[0]
=
array('1','吴者然','onestopweb.cn');
$data[1]
=
array('2','何开','iteye.com');
//
把PHP数组转成JSON字符串
$json_string
=
json_encode($data);
//
写入文件
file_put_contents('test.json',
$json_string);
?
有同名的
JSON
文件则覆盖,没有则创建。
生成或覆盖的
JSON
如下:
复制代码
代码如下:[["1","\u811A\u672C\u4E4B\u5BB6",""],["2","\u7F16\u7A0B\u5F00\u53D1","jb51.net"]]
然后,把
JSON
文件中的数据读取到PHP变量中。
getjson.php:
?php
//
从文件中读取数据到PHP变量
$json_string
=
file_get_contents('test.json');
//
把JSON字符串转成PHP数组
$data
=
json_decode($json_string,
true);
//
显示出来看看
var_dump($data);
echo
'brbr';
print_r($data);
echo
'brbr';
echo
'编号:'.$data[0][0].'
姓名:'.$data[0][1].'
网址:'.$data[0][2];
echo
'br';
echo
'编号:'.$data[1][0].'
姓名:'.$data[1][1].'
网址:'.$data[1][2];
?
效果图:
PS:这里再为大家推荐几款比较实用的json在线工具供大家参考使用:
在线JSON代码检验、检验、美化、格式化工具:
JSON在线格式化工具:
在线XML/JSON互相转换工具:
json代码在线格式化/美化/压缩/编辑/转换工具:
C语言风格/HTML/CSS/json代码格式化美化工具:
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP中json格式数据操作技巧汇总》、《PHP针对XML文件操作技巧总结》、《PHP基本语法入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
先使用json_decode()函数解析成数组,在用变量等于解析出来的数组
$test=json_decode("json数据");
输出 echo $test-key;
目前,JSON已经成为最流行的数据交换格式之一,各大网站的API几乎都支持它。
从5.2版本开始,PHP原生提供json_encode()和json_decode()函数,前者用于编码,后者用于解码。
一、json_encode()
该函数主要用来将数组和对象,转换为json格式。先看一个数组转换的例子:
$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}
由于json只接受utf-8编码的字符,所以json_encode()的参数必须是utf-8编码,否则会得到空字符或者null。当中文使用GB2312编码,或者外文使用ISO-8859-1编码的时候,这一点要特别注意。
二、索引数组和关联数组
PHP支持两种数组,一种是只保存"值"(value)的索引数组(indexed array),另一种是保存"名值对"(name/value)的关联数组(associative array)。
由于javascript不支持关联数组,所以json_encode()只将索引数组(indexed array)转为数组格式,而将关联数组(associative array)转为对象格式。
比如,现在有一个索引数组
$arr = Array('one', 'two', 'three');
echo json_encode($arr);
结果为:
["one","two","three"]
三、类(class)的转换
下面是一个PHP的类: class Foo { const ERROR_CODE = '404'; public $public_ex = 'this is public'; private $private_ex = 'this is private!'; protected $protected_ex = 'this should be protected'; public function getErrorCode() { return self::ERROR_CODE; } }
现在,对这个类的实例进行json转换:
$foo = new Foo;
$foo_json = json_encode($foo);
echo $foo_json;
输出结果是
{"public_ex":"this is public"}
可以看到,除了公开变量(public),其他东西(常量、私有变量、方法等等)都遗失了。
json_encode
对中文的处理是有问题的:
不能处理GBK编码,所有的GBK编码都会替换成空字符;
utf8编码的中文被编码成unicode编码,相当于javascript的escape函数
处理的结果。
为了能正确使用json,首先我们就应该在编码上采用utf8编码,然后再对
json_encode的返回结果稍加处理就可以得到正确的结果了。
即需要加:原始数据$json=iconv("GBK","UTF-8",$json);
json_decode之后需要显示或使用时,再转回来
echo iconv("UTF-8","GBK",$decode['data'][0]['APPName']);
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流