是字符串
["first","second","third"]
始终保留数组顺序并导致PHP数组
array('first','second','third');
使用json_decode()
时?我意识到答案是对象没有,但我问的是一个表示数组的字符串作为输入。
答案 0 :(得分:2)
是。数组按定义排序,JSON保留了它。
数组结构是一对围绕零个或多个值的方括号标记。价值观是 被逗号隔开。值的顺序很重要。
最后一句意味着改变顺序的JSON编码器或解码器不符合规范。我在PHP文档中找不到明确表示它遵守此要求的任何内容,但我认为可以假设它声称它实现了JSON。
答案 1 :(得分:1)
是的,将保留订单。
或者,您可以使用强制转换数组来对象,因为对象变量的顺序不会被修改json_encode((object)$arr)
。