php 怎么把json 读取

PHP 中正确使用 json_encode 函数进行中文转换 最后,通过调用 json_encode 函数将数组转换为 JSON 字符串,并将结果赋值给变量 $json。在使用 PHP 的 json_encode 函数进行中文转换时,我们应该确保设置了正确的字符编码,并在调用 json_encode 函数时使用 JSON_UNESCAPED_UNICODE 选项来避免中文字符被转义为 Unicode 编码。当处理中文字符时,我们需要确保 json_encode 函数能够正确地处理和转换这些字符,以避免出现乱码或转义错误的情况。 阅读详情

php如何解析这种JSON


JSON:

{"msg":{"auth":"Yes_auth","ddid":"1","payje":0.3,"payzt":"SUCCESS"}}

如何得到payzt这个参数的值?求代码


答:

$jsonStr = '{"msg":{"auth":"Yes_auth","ddid":"1","payje":0.3,"payzt":"SUCCESS"}}';
 
$arr = json_decode($jsonStr, true);
 
$payzt = $arr['msg']['payzt'];
 
// 或者
 
$jsonStr = '{"msg":{"auth":"Yes_auth","ddid":"1","payje":0.3,"payzt":"SUCCESS"}}';
 
$arr = json_decode($jsonStr);
 
$payzt = $arr->msg->payzt;

 关键是对json_decode函数的使用。

//读取json文件
$json = file_get_contents('XXX.json');
//json格式解析
$arr = json_decode($json,true);

php中json_decode()和json_encode()的使用方法

1.json_decode() 

json_decode 
(PHP 5 >= 5.2.0, PECL json >= 1.2.0) 

json_decode — 对 JSON 格式的字符串进行编码 

说明 
mixed json_decode ( string $json [, bool $assoc ] ) 
接受一个 JSON 格式的字符串并且把它转换为 PHP 变量 

参数 

json 
待解码的 json string 格式的字符串。 

assoc 
当该参数为 TRUE 时,将返回 array 而非 object 。 


返回值 
Returns an object or if the optional assoc parameter is TRUE, an associative array is instead returned. 

范例 

Example #1 json_decode() 的例子 

复制代码代码如下:

<?php 
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}'; 
var_dump(json_decode($json)); 
var_dump(json_decode($json, true)); 
?> 

上例将输出: 
复制代码代码如下:

object(stdClass)#1 (5) { 
["a"] => int(1) 
["b"] => int(2) 
["c"] => int(3) 
["d"] => int(4) 
["e"] => int(5) 
} 

array(5) { 
["a"] => int(1) 
["b"] => int(2) 
["c"] => int(3) 
["d"] => int(4) 
["e"] => int(5) 
} 

复制代码代码如下:

$data='[{"Name":"a1","Number":"123","Contno":"000","QQNo":""},{"Name":"a1","Number":"123","Contno":"000","QQNo":""},{"Name":"a1","Number":"123","Contno":"000","QQNo":""}]'; 
echo json_decode($data); 

结果为: 
复制代码代码如下:

Array ( [0] => stdClass Object ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) [1] => stdClass Object ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) [2] => stdClass Object ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) ) 

可以看出经过json_decode()编译出来的是对象,现在输出json_decode($data,true)试下 
复制代码代码如下:

echo json_decode($data,true); 

结果: 
复制代码代码如下:

Array ( [0] => Array ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) [1] => Array ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) [2] => Array ( [Name] => a1 [Number] => 123 [Contno] => 000 [QQNo] => ) ) 

可以看出 json_decode($data,true)输出的一个关联数组,由此可知json_decode($data)输出的是对象,而json_decode("$arr",true)是把它强制生成PHP关联数组. 

2.json_encode() 

json_encode 
(PHP 5 >= 5.2.0, PECL json >= 1.2.0) 

json_encode — 对变量进行 JSON 编码 

Report a bug 说明 
string json_encode ( mixed $value [, int $options = 0 ] ) 
返回 value 值的 JSON 形式 

Report a bug 参数 

value 
待编码的 value ,除了resource 类型之外,可以为任何数据类型 

该函数只能接受 UTF-8 编码的数据 

options 
由以下常量组成的二进制掩码: 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_UNESCAPED_UNICODE. 

Report a bug 返回值 
编码成功则返回一个以 JSON 形式表示的 string 或者在失败时返回 FALSE 。 

Report a bug 更新日志 
版本 说明 
5.4.0 options 参数增加常量: JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, 和 JSON_UNESCAPED_UNICODE。 
5.3.3 options 参数增加常量:JSON_NUMERIC_CHECK。 
5.3.0 增加 options 参数. 


Report a bug 范例 

Example #1 A json_encode() 的例子 
复制代码代码如下:

<?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} 

Example #2 json_encode() 函数中 options 参数的用法 
复制代码代码如下:

<?php 
$a = array('<foo>',"'bar'",'"baz"','&blong&', "\xc3\xa9"); 

echo "Normal: ", json_encode($a), "\n"; 
echo "Tags: ", json_encode($a, JSON_HEX_TAG), "\n"; 
echo "Apos: ", json_encode($a, JSON_HEX_APOS), "\n"; 
echo "Quot: ", json_encode($a, JSON_HEX_QUOT), "\n"; 
echo "Amp: ", json_encode($a, JSON_HEX_AMP), "\n"; 
echo "Unicode: ", json_encode($a, JSON_UNESCAPED_UNICODE), "\n"; 
echo "All: ", json_encode($a, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE), "\n\n"; 

$b = array(); 

echo "Empty array output as array: ", json_encode($b), "\n"; 
echo "Empty array output as object: ", json_encode($b, JSON_FORCE_OBJECT), "\n\n"; 

$c = array(array(1,2,3)); 

echo "Non-associative array output as array: ", json_encode($c), "\n"; 
echo "Non-associative array output as object: ", json_encode($c, JSON_FORCE_OBJECT), "\n\n"; 

$d = array('foo' => 'bar', 'baz' => 'long'); 

echo "Associative array always output as object: ", json_encode($d), "\n"; 
echo "Associative array always output as object: ", json_encode($d, JSON_FORCE_OBJECT), "\n\n"; 
?> 

以上例程会输出: 
复制代码代码如下:

Normal: ["<foo>","'bar'","\"baz\"","&blong&","\u00e9"] 
Tags: ["\u003Cfoo\u003E","'bar'","\"baz\"","&blong&","\u00e9"] 
Apos: ["<foo>","\u0027bar\u0027","\"baz\"","&blong&","\u00e9"] 
Quot: ["<foo>","'bar'","\u0022baz\u0022","&blong&","\u00e9"] 
Amp: ["<foo>","'bar'","\"baz\"","\u0026blong\u0026","\u00e9"] 
Unicode: ["<foo>","'bar'","\"baz\"","&blong&","é"] 
All: ["\u003Cfoo\u003E","\u0027bar\u0027","\u0022baz\u0022","\u0026blong\u0026","é"] 

Empty array output as array: [] 
Empty array output as object: {} 

Non-associative array output as array: [[1,2,3]] 
Non-associative array output as object: {"0":{"0":1,"1":2,"2":3}} 

Associative array always output as object: {"foo":"bar","baz":"long"} 
Associative array always output as object: {"foo":"bar","baz":"long"} 

Example #3 连续与非连续数组示例 
复制代码代码如下:

<?php 
echo "连续数组".PHP_EOL; 
$sequential = array("foo", "bar", "baz", "blong"); 
var_dump( 
$sequential, 
json_encode($sequential) 
); 

echo PHP_EOL."非连续数组".PHP_EOL; 
$nonsequential = array(1=>"foo", 2=>"bar", 3=>"baz", 4=>"blong"); 
var_dump( 
$nonsequential, 
json_encode($nonsequential) 
); 

echo PHP_EOL."删除一个连续数组值的方式产生的非连续数组".PHP_EOL; 
unset($sequential[1]); 
var_dump( 
$sequential, 
json_encode($sequential) 
); 
?> 

以上例程会输出: 
复制代码代码如下:

连续数组 
array(4) { 
[0]=> 
string(3) "foo" 
[1]=> 
string(3) "bar" 
[2]=> 
string(3) "baz" 
[3]=> 
string(5) "blong" 
} 
string(27) "["foo","bar","baz","blong"]" 

非连续数组 
array(4) { 
[1]=> 
string(3) "foo" 
[2]=> 
string(3) "bar" 
[3]=> 
string(3) "baz" 
[4]=> 
string(5) "blong" 
} 
string(43) "{"1":"foo","2":"bar","3":"baz","4":"blong"}" 

删除一个连续数组值的方式产生的非连续数组 
array(3) { 
[0]=> 
string(3) "foo" 
[2]=> 
string(3) "baz" 
[3]=> 
string(5) "blong" 
} 
string(33) "{"0":"foo","2":"baz","3":"blong"}" 

复制代码代码如下:

$obj->Name= 'a1';$obj->Number ='123'; 
$obj->Contno= '000'; 
echo json_encode($obj); 

结果为: 
复制代码代码如下:

{"Name":"a1", 
"Number":"123", 
"Contno":"000" 
} 

可以看出json_encode()和json_decode()是编译和反编译过程,注意json只接受utf-8编码的字符,所以json_encode()的参数必须是utf-8编码,否则会得到空字符或者null。


C#实现串口通讯程序 1、自动获取本地串口。2、根据传入串口基本属性参数打开串口。3、串口数据的发送接收功能(ASCII和HEX格式)。4、ASCII和HEX相互转换。csharp体验AI代码助手代码解读复制代码[Category("UserProperty")] [Description("轮廓半径")] public int Radius { get => radius; 阅读详情

相关推荐

拆开一个烧坏的IGBT模块,手把手教你识别过压、过流、过温的“案发现场”

本文详细解析了IGBT模块失效分析的实战技巧,通过观察铝层熔化纹路、焊锡溢出形态等物理痕迹,手把手教你识别过压、过流、过温的典型失效模式。文章提供了从基础工具包到现场快速诊断的完整流程,帮助工程师精准定位IGBT模块失效的根本原因。

weixin_30655569的博客 424

【小白专用】PHP array_push() 函数

PHP数组函数应用之array_push()

zgscwxd的博客 2080

51单片机自学笔记(六)数码管动态扫描与消影实战

本文详细解析了51单片机数码管动态扫描原理与视觉暂留效应,通过硬件电路分析和C语言代码实战,重点介绍了三种数码管消影技术(段选清零法、位选屏蔽法、硬件消影法),解决了显示重影问题,并提供了常见问题调试技巧与定时器中断优化方案,帮助开发者掌握稳定的多位数码管显示技术。

y9z0a1b的博客 1103

深入解析PHP中的array_push函数:从基础用法到实际项目应用

在PHP编程中,array_push是一个非常常用且有用的函数。今天咱就来好好聊聊这个函数,从基础用法到可能遇到的各种情况,包括一些容易出错的点,再结合实际的项目场景,让你对它有一个透彻的了解。

v3WpjSvm的博客 1565

AI辅助专利撰写实战:用Codex 30分钟生成发明专利初稿

这次我们来看一个用 Codex 从零开始撰写发明专利的实战项目。对于技术研发人员、产品经理或初创团队来说,专利申请是保护创新成果、构建技术壁垒的关键一步。然而,撰写一份高质量的专利申请书,尤其是权利要求书和说明书,往往需要专业的法律和技术语言,耗时耗力。这个项目演示了如何利用 AI 工具 Codex,在短时间内生成一份结构完整、逻辑清晰、具备授权潜力的专利申请文件初稿。 整个过程的核心不是让 AI 完全替代专利代理人,而是将其作为强大的“技术翻译”和“内容生成”助手。它能将你的技术构思、流程图、核心算法或产

weixin_32181267的博客 413

音视频入门:H264、H265概念总结

添加链接描述 什么是H.264与H.265 H.264与H.265都是视频压缩格式,由于视频本身的码流太大,所以需要经过压缩然后再通过网络进行传输。H.264是目前比较主流的压缩算法,像视频会议设备一般都采用这个编码格式。基础的H.264可以支持在1M带宽下传输720P30帧/秒的图像;H.264 HIGH PROFILE支持在512K带宽下传输720P30帧/秒的图像。 H.265是比较新的压缩算法,可以更一步提高压缩比,随着我们现在生活中出现的视频格式越来越大(比如现在基本都是1080P甚至4K的显示器

weixin_40673765的博客 8936

深入了解PHP的array_push函数

array_push函数是PHP中一个方便的数组操作函数,用于向数组末尾添加一个或多个元素。通过本文的介绍,我们了解了array_push函数的语法、用法和示例,希望这能帮助你更好地理解和使用PHP中的数组操作。深入了解PHP的array_push函数-码农资源网。

u011715638的博客 1477

【scratch音乐课】天空之城:音符与节拍、消息与链表

scratch是一个非常小巧的青少年编程工具,自带程序编写语句,积木式语句非常直观、易用,可创作数学、科学、音乐、绘画等方面作品。本文用scratch“演奏”一首大家非常熟悉的《天空之城》,并向大家介绍一些基本乐理知识,以及scratch中消息、链表的使用。

★·°立芯;︶︵︶ 1万+

php中json_decode()和json_encode()的使用方法

1.json_decode()  json_decode  (PHP 5 >= 5.2.0, PECL json >= 1.2.0)  json_decode — 对 JSON 格式的字符串进行编码  说明  mixed json_decode ( string $json [, bool $assoc ] )  接受一个 JSON 格式的字符串并且把它转换为 PHP 变量

1440

筑基篇第9节:CUDA内存管理API进阶

CUDA多维内存管理与零拷贝技术 本文介绍了CUDA中高效处理多维数据的内存管理技术。对于二维数据,使用cudaMallocPitch可确保内存对齐访问,提升75%的带宽利用率;三维数据则通过cudaMalloc3D实现切片对齐。配套的cudaMemcpy2D/3D函数能高效处理数据拷贝。此外,零拷贝内存技术允许内核直接访问主机内存,避免显存拷贝开销。这些技术对图像处理、科学计算等应用至关重要,能显著提升多维数据处理的性能。

PeterPan的博客 81

Simulink开发项1000例实战专栏--实例38:基于Simulink的周波变换器(Cycloconverter)

需求分析周波变换器(Cycloconverter),也称为频率变换器或直接变频器,是一种将输入的固定频率交流电直接转换为不同频率的交流电的电力电子设备。它广泛应用于工业领域,如大功率电机驱动、风力发电、船舶推进系统等场合。与传统的间接变频器(如交-直-交变频器)相比,周波变换器具有更高的效率和更简单的结构,适用于需要低频输出的应用场景。

xiaoheshang_123的博客 334

php用一行代码读取本地json

php用一行代码读取本地json

冷月心的博客 1382

EMC诊断技术及电磁兼容理论设计

本文深入探讨了EMC诊断技术,重点在于滤波篇,详细讲解了EMI滤波器的设计、选型、测试及应用注意事项。内容涵盖噪声限值法规、滤波器的法规依据、插入损耗测试以及滤波电容的高频特性。同时,还阐述了噪声源的近场与远场特性,如何快速定位和抑制噪声。通过实例分析,提供了滤波器件和辐射噪声抑制器件的选型策略。

让你爱上电路设计 2162

php读本地json文件内容,php读取本地json文件有哪些方法

这次给大家带来php读取本地json文件有哪些方法,php读取本地json文件的注意事项有哪些,下面就是实战案例,一起来看一下。1.data.json文件{"goods":[{"type":1,"name":"wow精选","product":[{"id":98,"name":"真皮大衣","title":"单桶原酿酒 威士忌 新春礼盒 限量独家","titleDesc":"苏格兰麦芽糖,中国定制...

weixin_29503627的博客 1856

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

php读取本地json文件

1.data.json文件 { "goods":[ { "type":1, "name":"wow精选", "product":[ { "id":98, "name":"真皮大衣", "title":"单桶原酿酒 威士忌 新春礼盒 限量独家", "titleDesc":"苏格兰麦芽糖,中国定制版", "price"

milli236的博客 2万+

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

PHP语言json数据写入到json文件,读取json文件

PHP数组数据写入JSON文件 &lt;?php // 生成一个PHP数组 $data = array(); $data['name'] = 'admin'; $data['pwd'] = '123456'; // 把PHP数组转成JSON字符串 $json_string = json_encode($data); // 写入文件 file_put_contents('user.jso...

haocaicai的博客 1万+

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

php读本地json文件内容,php读取本地json文件的实例

1.data.json文件{"goods":[{"type":1,"name":"wow精选","product":[{"id":98,"name":"真皮大衣","title":"单桶原酿酒 威士忌 新春礼盒 限量独家","titleDesc":"苏格兰麦芽糖,中国定制版","price":1298.00},{"id":99,"name":"品牌内衣","title":"单桶原酿酒 威士忌 新春...

weixin_36245032的博客 648

php导入json文件_php怎样读取本地的json文件

这次给大家带来php怎样读取本地的json文件,php读取本地json文件的注意事项有哪些,下面就是实战案例,一起来看一下。1.data.json文件{"goods":[{"type":1,"name":"wow精选","product":[{"id":98,"name":"真皮大衣","title":"单桶原酿酒 威士忌 新春礼盒 限量独家","titleDesc":"苏格兰麦芽糖,中国定制版"...

weixin_39835158的博客 471

php读取解析json文件内容,php读取解析json文件,该怎么解决

php读取解析json文件$filename="./js/recommendMenu.json";$json_string=file_get_contents($filename);echoprint_r($json_string,true);//打印文件的内容echo"";$json2_string='{"tsnpm":{"name":"#特色牛排面#","s...

weixin_34382015的博客 582

PHP笔记-->读取JSON数据以及获取读取到的JSON里边的数据

以前用C#读取的时候,是先定义一个数组,将反序列化的json存到数组里面,在从数组里面获取jaon中的“data”数据。其实PHP的思路也是一样的,但是由于PHP是弱类型语言,所以定义一个变量直接取数据就行。在读取json数据的时候被以前的思维卡住了。由于我以前是写C#的,现在学一下PHP,

魍魉 1325

PHP json 读取 实例

PHP json 读取 实例

liuxue9998的专栏 303

php mysql json 读取数据_php如何读取数据库转json数据

php读取数据库转json数据的实现方法:首先连接数据库并读取数据库;然后在数据库读取后,直接将数据转换为数组显示;最后通过“json_encode”转为JSON即可。PHP读取数据库记录转换为JSON的代码(API接口的SQL语句)为了提供API接口,我们常常在读取数据库后,将数据转换为数组,通过json_encode转为JSON,即可满足使用需要。现将代码粘帖如下:读取一条记录,转为数组并输出...

weixin_36444022的博客 508

php导入json文件怎么打开,PHP读取本地json文件的实例-php文件

本篇文章扣丁学堂小编主要是和大家分享一下PHP读取本地json文件的实例,文章中会有代码列出供大家详细了解。对PHP感兴趣想要学好PHP开发技术的小伙伴们随着小编一起来看一下吧。PHP培训1、data.json文件:{"goods":[{"type":1,"name":"wow精选","product":[{"id":98,"name":"真皮大衣","title":"单桶原酿酒 威士忌 新春礼盒...

weixin_35836501的博客 374

json php 数组读写_PHP如何读取json文件,并解析成数组

PHP如何读取json文件,并解析成数组马富天2016-07-10 16:32:21355【摘要】平时我调用json格式都是使用ajax去访问接口的,也没有想到直接使用PHP去处理json文件,下面总结一下PHP处理json文件的两种方法。首先要读取的json文件格式:(json.json){"comments": [{ "id":"1","comment":"AAA" },{ "id":"2",...

weixin_39710106的博客 966
上一篇: Ajax方式上传文件
下一篇: js问题记录
puddingpp
博客等级 码龄9年 10粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值