PHP json_decode为什么将json字符串转成数组是对象格式?
eg.
$a='[{\"img\":\"/uploads/agency/carimgs/5/15515954778091.jpg\"},{\"img\":\"/uploads/agency/carimgs/5/15515954774873.jpg\"}]';
如果用json_decode($a),得到的是:
array (size=2)
0 =>
object(stdClass)[2]
public 'img' => string '/uploads/agency/carimgs/5/15515954778091.jpg' (length=44)
1 =>
object(stdClass)[3]
public 'img' => string '/uploads/agency/carimgs/5/15515954774873.jpg' (length=44)
可见,返回的结果是 object 而非 array。应以对象形式访问 ->
而对于json_decode这个函数
json_decode() 对JSON数据进行解码,转换为PHP变量
语法:json_decode ($json [,$assoc = false [, $depth = 512 [, $options = 0 ]]])
注意:1、$json 为待解码的数据,必须为utf8编码的数据;
2、$assoc 值为TRUE时返回数组,FALSE时返回对象;
3、$depth 为递归深度;
4、$option 二进制掩码,目前只支持 JSON_BIGINT_AS_STRING;
5、一般只用前面两个参数,如果要数据类型的数据要加一个参数true。
所以json_decode($a,true),就会得到
array (size=2)
0 =>
array (size=1)
'img' => string '/uploads/agency/carimgs/5/15515954778091.jpg' (length=44)
1 =>
array (size=1)
'img' => string '/uploads/agency/carimgs/5/15515954774873.jpg' (length=44)
PHP json_decode为什么将json字符串转成数组是对象格式?的更多相关文章
- json字符串转成数组
$hour_23 json_decode($hour_23,true);//(第二个参数为true的时候)
- C#中服务端接受前端JSON字符串转换成字典集合
我们是否可以把从前端接受的JSON字符串转换成字典集合呢? 比如从前端接收:{'size':'10', 'weight':'10kg'} 在服务端转换成:[{size:"10"}, ...
- json字符串转成 Map/List
package jsonToMap; import java.util.List; import java.util.Map; import java.util.Map.Entry; import n ...
- js中json字符串转成js对象
json字符串转成js对象我所知的方法有2种: //json字符串转换成json对象 var str_json = "{name:'liuchuan'}"; //json字符串 / ...
- json 字符串转换成对象,对象转换成json字符串
json 字符串转换成对象,对象转换成json字符串 前端: 方法一: parseJSON方法: [注意jquery版本问题] var str = '{"name":&qu ...
- json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值
一.json相关概念 json,全称为javascript object notation,是一种轻量级的数据交互格式.采用完全独立于语言的文本格式,是一种理想的数据交换格式. 同时,json是jav ...
- 使用jackson来进行数组格式的json字符串转换成List。
有一个字符串如下.如下,也是通过jackson把list转换成的json字符串,我想把它转过来,看网上的内容都不尽人如意,都是片断的内容.估计只有写的知道怎么使用,所以就直接看了jackson的官网, ...
- 特殊字符导致json字符串转换成json对象出错
在对数据库取出来的数据(特别是描述信息)里面含有特殊字符的话,使用JSON.parse将json字符串转换成json对象的时候会出错,主要是双引号,回车换行等影响明显,左尖括号和右尖括号也会导致显示问 ...
- .net 4中使用 dynamic,将json字符串转成对象的 万能方法。
在.net 4中增加了对弱类型的支持.为和弱类型的对象进行数据交换提供了方法.我们常常会遇到将json字符串转成对象的情景,虽然可以使用 JavaScriptSerializer 或者 DataCon ...
随机推荐
- oracle - sqldeveloper 手动执行包 package的方法
比如建立一个包头如下: create or replace PACKAGE LSG_OBC_ORDERS_HK01_EC_PKG AS PROCEDURE LSG_OBC_HK01_main( err ...
- Django框架详细介绍---cookie、session、自定义分页
1.cookie 在HTTP协议介绍中提到,该协议是无状态的,也就是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不会直接影响后面的 ...
- 重装@angular/cli reason: write EPROTO 139955972261696:error:1408F10B:SSL routines:ssl3_get_record:wrong version number:../deps/openssl/openssl/ssl/record/ssl3_record.c:252:
前几天不小心卸载了 angular@cli,然后重装的时候发现,一直报错.如下: ××××××××@××××ln622653:/$ npm install -g @angular/clinpm ERR ...
- MyBatis探究-----传递参数详解
1.单个参数 mybatis不会做特殊处理,#{参数名/任意名}:取出参数值 例如:接口中方法 public Employee getEmpById(String empId); XML中 <s ...
- 微信扫描二维码安卓弹出默认浏览器(苹果打开App Store)打开下载链接
使用微信推广的用户经常都会遇到推广链接被拦截导致无法下载app的情况,此时用户在微信中打开会提示“ 已停止访问该网页 ”.这对于使用微信营销的商家来说就很不友好且损失非常大,因为用户是不知道为什么打不 ...
- 03-python3.5-模拟购物车流程--更新追加细节注释功能
03-python3.5-模拟购物车流程--更新追加细节注释功能: 模拟购物车更新脚本: #!/usr/bin/env python #-*- coding: utf-8 -*- #__author_ ...
- POJ滑雪
滑雪 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 97172 Accepted: 36843 Description ...
- HTTP劫持和DNS劫持
HTTP劫持和DNS劫持 首先对运营商的劫持行为做一些分析,他们的目的无非就是赚钱,而赚钱的方式有两种: 1.对正常网站加入额外的广告,这包括网页内浮层或弹出广告窗口: 2.针对一些广告联盟或带推广链 ...
- TeamCity安装
1 使用docker安装 安装手册:https://hub.docker.com/r/jetbrains/teamcity-server/2 安装包安装. docker run -it --name ...
- 浅谈Vue之双向绑定
VUE实现双向数据绑定的原理就是利用了 Object.defineProperty() 这个方法重新定义了对象获取属性值(get)和设置属性值(set)的操作来实现的.那么Object.defineP ...