json_decode 索引为数字时自动排序问题解决方法

json_encode 索引为数字,自动排序问题

使用son_encode 给前端返回数据,结果顺序不对,经debug调试,发现是json_encode 函数的问题;

{
 "code": 0,
 "msg": "请求成功!",
 "data": {
  "2018-10": {
   "17": [
    {
     "id": 730,
     "uid": "118209",
     "is_read": false,
     "biggest_high": 0,
     "first_read_at": "",
     "stock_name": "长春燃气",
     "stock_code": "600333",
     "in_timed_at": 1539756681,
     "price": "6.4"
    }
   ],
   "18": [
    {
     "id": 735,
     "uid": "118209",
     "is_read": false,
     "biggest_high": 0,
     "first_read_at": "",
     "stock_name": "天孚通信",
     "stock_code": "300394",
     "in_timed_at": 1539828137,
     "price": "17.7"
    }
   ],
   "19": [
    {
     "id": 748,
     "uid": "118209",
     "is_read": false,
     "biggest_high": 0,
     "first_read_at": "",
     "stock_name": "科大讯飞",
     "stock_code": "002230",
     "in_timed_at": 1539941525,
     "price": "31.87"
    }
   ],
   "09": [
    {
     "id": 706,
     "uid": "118209",
     "is_read": false,
     "biggest_high": 0,
     "first_read_at": "",
     "stock_name": "温州宏丰",
     "stock_code": "300283",
     "in_timed_at": 1539048922,
     "price": "4.83"
    }
   ]
  },
  "2018-09": {
   "29": [
    {
     "id": 702,
     "uid": "118209",
     "is_read": false,
     "biggest_high": 0,
     "first_read_at": "",
     "stock_name": "新美星",
     "stock_code": "300509",
     "in_timed_at": 1538212392,
     "price": "13.36"
    }
   ]
  }
 }
}

解决办法:在数字索引前加个空格。如“ 19” “ 18”完美解决问题。

解决方法:变成 " " + 数字即可,例如:" 18", " 19"

{
 "code": 0,
 "msg": "请求成功!",
 "data": {
  "2018-10": {
   " 19": [
    {
     "id": 748,
     "uid": "118209",
     "is_read": false,
     "biggest_high": 0,
     "first_read_at": "",
     "stock_name": "科大讯飞",
     "stock_code": "002230",
     "in_timed_at": 1539941525,
     "price": "31.87"
    }
   ],
   " 18": [
    {
     "id": 735,
     "uid": "118209",
     "is_read": false,
     "biggest_high": 0,
     "first_read_at": "",
     "stock_name": "天孚通信",
     "stock_code": "300394",
     "in_timed_at": 1539828137,
     "price": "17.7"
    }
   ],
   " 17": [
    {
     "id": 730,
     "uid": "118209",
     "is_read": false,
     "biggest_high": 0,
     "first_read_at": "",
     "stock_name": "长春燃气",
     "stock_code": "600333",
     "in_timed_at": 1539756681,
     "price": "6.4"
    }
   ],
   " 09": [
    {
     "id": 706,
     "uid": "118209",
     "is_read": false,
     "biggest_high": 0,
     "first_read_at": "",
     "stock_name": "温州宏丰",
     "stock_code": "300283",
     "in_timed_at": 1539048922,
     "price": "4.83"
    }
   ]
  },
  "2018-09": {
   " 29": [
    {
     "id": 702,
     "uid": "118209",
     "is_read": false,
     "biggest_high": 0,
     "first_read_at": "",
     "stock_name": "新美星",
     "stock_code": "300509",
     "in_timed_at": 1538212392,
     "price": "13.36"
    }
   ]
  }
 }
}

到此这篇关于json_decode 索引为数字时自动排序问题解决方法的文章就介绍到这了,更多相关json_decode 数字索引自动排序内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • json_decode 索引为数字时自动排序问题解决方法

    json_encode 索引为数字,自动排序问题 使用son_encode 给前端返回数据,结果顺序不对,经debug调试,发现是json_encode 函数的问题: { "code": 0, "msg": "请求成功!", "data": { "2018-10": { "17": [ { "id": 730, "uid": "11820

  • java获取键盘输入的数字,并进行排序的方法

    需求:由键盘输入三个整数分别存入变量num1.num2.num3,对它们进行排序, 并且从小到大输出 要求使用2种方法实现: 一.使用if-else分支结构: 二.使用java内置模块Arrays的排序方法. 一.使用if-else分支结构 class Date19_02 { public static void main(String[] arg){ sortOne(); } public static void sortOne(){ Scanner sc1 = new Scanner(Sys

  • JavaScript对表格或元素按文本,数字或日期排序的方法

    本文实例讲述了JavaScript对表格或元素按文本,数字或日期排序的方法.分享给大家供大家参考.具体实现方法如下: // Sorting table columns correctly by text, number or date. There are other // versions, plugins, etc., for this but they either are restricted to specific // date formats, or require EVERY r

  • IE浏览器下JS脚本提交表单后,不能自动提示问题解决方法

    本文实例讲述了IE浏览器下JS脚本提交表单后,不能自动提示问题解决方法.分享给大家供大家参考,具体如下: 经常我们用表单提交东西,在提交后,浏览器会自动记录你输入的东西,下次你再输入的时候,可以重新选择,但是如果你是用IE的话,这里有一个BUG, 其他浏览器没有这个问题.当然首先你得设置IE 浏览器选项是可以记录表单数据的,然后写一段代码来测试. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> &

  • 当json键为数字时的取值方法解析

    当json的键为数字时如何取值,如: var aa={'111':'aaaaa'}; alert(sss.111); 这样是不行的,alert不会弹任何东西. json的键必须是一个对象,才能取出东西,如: var aa={'s111s':'aaaaa'}; var idd="s111s"; alert(sss.idd); 解答: 对于数字键名或者非正常变量字符(比如有空格),必须使用 aa[x]的方式.var aa={'111':'aaaaa'}; alert(sss["1

  • 易语言设置组合框内容自动排序的方法

    自动排序属性 数据类型:逻辑型: 语法: 对象.自动排序 = 逻辑型 设定对象的内容是否需要排序,默认为"假",即不自动排序. 例程: 说明: 设置组合框的自动排序属性. 运行结果: 总结 以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持.如果你想了解更多相关内容请查看下面相关链接

  • SQL字符型字段按数字型字段排序实现方法

    这是很久之前的就遇到的问题了,去年写了个WP插件:WordPress投票插件Ludou Simple Vote,由于有些使用者需要一个投票排行榜,所以需要用一条SQL来读取按得分排序的文章列表. Ludou Simple Vote的投票得分结果是以自定义栏目的方式存储在WordPress的postmeta中,分值存放在meta_value字段,而meta_value字段类型是longtext,如果直接使用下面的SQL查询语句来排序: 复制代码 代码如下: ORDER BY `meta_value

  • SQLite字符串比较时的大小写问题解决方法

    大部分数据库在进行字符串比较的时候,对大小写是不敏感的.但是,最近使用SQLite的时候,却发现它的情况恰好相反. 假设表User的结构和值如下:   UserName 1 User1 执行下面的SQL语句: 复制代码 代码如下: SELECT * FROM [User] WHERE UserName = 'user1' 结果是没有找到任何记录.明显地,SQLite在进行字符串比较的时候,默认对大小写是敏感的.这会对应用程序造成不良的影响.比如,用户在输入用户名的时候必须严格按照大小写输入,这是

  • 导入extjs、jquery 文件时$使用冲突问题解决方法

    1.在最近做项目时,在html页面中,没有导入jquery文件时,可以正常保存,而导入jquery文件后,则不能不存了 经过调试后,发现导入的jquery文件和现有的extjs文件冲突了(原因是$符号的冲突) jQuery与ExtJS之间发生冲突,但是在非IE内核下是可以的,是由于$符号的冲突,解决办法就是把jQuery的$符号用其他来代替,代码如下: 复制代码 代码如下: <script type="text/javascript" src="js/jquery.js

  • rsync备份时自动创建目录的方法

    一直以来都习惯用 rsync + ssh 作服务器文件同步,但之前都没有在命令参数里面找到类似 mkdir -p 的功能,可以在同步某个指定文件的时候自动在目标服务器上根据需要创建完整的父级目录.比如某些按年月日自动生成的目录型文件需要在文件生成的时候即时同步: 复制代码 代码如下: rsync -lprztW --rsh="/usr/bin/ssh -l rsyncuser" /var/2007/12/13/1001.gif 10.0.0.1:/var/2007/12/13/1001

随机推荐