php json_encode奇怪问题说明
作者:bea
json_encode 只支持utf-8格式这个就不多说了 代码如下: $array = array ( [0] => array ( [sale_unit_detail_id] => 13 [price] => 740000 [geometric_lat] => 51.50348620 [geometric_lng] =>-0.01710900 ) [1] => Array ( [sale_unit_detail_id] =&g
json_encode 只支持utf-8格式这个就不多说了
代码如下:
$array = array (
[0] => array ( [sale_unit_detail_id] => 13 [price] => 740000 [geometric_lat] => 51.50348620 [geometric_lng] =>-0.01710900 )
[1] => Array ( [sale_unit_detail_id] => 27 [price] => 740000 [geometric_lat] => 51.50348620 [geometric_lng] => -0.01710900 )
);
上面的php数组json_encode 之后通常会转化php数组会转化为形如[[...][...]] 的格式,但是今天碰到一个怪问题,当我的数组长度达到142的时候 给我转化为了形如
{'0' :{..},'1':{...}......}的格式很奇怪,json_encode 一个神奇的函数
php中json_encode转数组为json字符串时的超奇怪问题。
对比以下两段代码:
代码如下:
$menu[0][0] = "title1";
$menu[0][1] = "bar1";
$menu[0][2] = "bar2";
$menu[1][0] = 'title2';
$menu[2][0] = 'title3';
echo '&$menu='.json_encode($menu).'&';
这个会输出:&$menu=[["title1","bar1","bar2"],["title2"],["title3"]]&
代码如下:
$menu[0]["title"] = "title1";
$menu[0]["bar1"] = "bar1";
$menu[0]["bar2"] = "bar2";
$menu[1][0] = 'title2';
$menu[2][0] = 'title3';
echo '&$menu='.json_encode($menu).'&';
而这个居然输出:&$menu=[{"title":"title1","bar1":"bar1","bar2":"bar2"},["title2"],["title3"]]&
什么意思?问题就在于{}和[],{}是对象,[]是数组!!!!在非php的情况下遍历的时候方法就不一样了!json_encode这个东西太神奇了,神奇起来让人有点郁闷!
有用 | 无用
代码如下:
$array = array (
[0] => array ( [sale_unit_detail_id] => 13 [price] => 740000 [geometric_lat] => 51.50348620 [geometric_lng] =>-0.01710900 )
[1] => Array ( [sale_unit_detail_id] => 27 [price] => 740000 [geometric_lat] => 51.50348620 [geometric_lng] => -0.01710900 )
);
上面的php数组json_encode 之后通常会转化php数组会转化为形如[[...][...]] 的格式,但是今天碰到一个怪问题,当我的数组长度达到142的时候 给我转化为了形如
{'0' :{..},'1':{...}......}的格式很奇怪,json_encode 一个神奇的函数
php中json_encode转数组为json字符串时的超奇怪问题。
对比以下两段代码:
代码如下:
$menu[0][0] = "title1";
$menu[0][1] = "bar1";
$menu[0][2] = "bar2";
$menu[1][0] = 'title2';
$menu[2][0] = 'title3';
echo '&$menu='.json_encode($menu).'&';
这个会输出:&$menu=[["title1","bar1","bar2"],["title2"],["title3"]]&
代码如下:
$menu[0]["title"] = "title1";
$menu[0]["bar1"] = "bar1";
$menu[0]["bar2"] = "bar2";
$menu[1][0] = 'title2';
$menu[2][0] = 'title3';
echo '&$menu='.json_encode($menu).'&';
而这个居然输出:&$menu=[{"title":"title1","bar1":"bar1","bar2":"bar2"},["title2"],["title3"]]&
什么意思?问题就在于{}和[],{}是对象,[]是数组!!!!在非php的情况下遍历的时候方法就不一样了!json_encode这个东西太神奇了,神奇起来让人有点郁闷!
有用 | 无用
猜你喜欢
您可能感兴趣的文章:
- 使用PHP实现密保卡功能实现代码<打包下载直接运行>
- PHP实现时间轴函数代码
- PHP+Mysql+jQuery实现动态展示信息
- PHP+Mysql+jQuery实现发布微博程序 jQuery篇
- php实现用户在线时间统计详解
- php 文件缓存函数
- php数字转汉字代码(算法)
- PHP判断远程url是否有效的几种方法小结
- php下利用curl判断远程文件是否存在的实现代码
- PHP下判断网址是否有效的代码
- Admin generator, filters and I18n
- 如何在symfony中导出为CSV文件中的数据
- php中时间轴开发(刚刚、5分钟前、昨天10:23等)
- linux iconv方法的使用
- linux系统上支持php的 iconv()函数的方法
- php中mysql模块部分功能的简单封装
- php XMLWriter类的简单示例代码(RSS输出)
- 简单的PHP缓存设计实现代码
- php利用iframe实现无刷新文件上传功能的代码