kja*_*mes 5 php sorting laravel-5
当我尝试执行asort($data)然后返回它时response()->json($data, 200),输出仍处于原始位置。
这是代码:
$fruits = array( 'guava', 'apple', 'orange' );
asort( $fruits );
return response()->json( $fruits, 200 );
Run Code Online (Sandbox Code Playgroud)
那么输出仍处于其位置。
{
0: "guava",
1: "apple",
2: "orange"
}
Run Code Online (Sandbox Code Playgroud)
但是当我尝试在排序发生后转储数据时,就像
$fruits = array( 'guava', 'apple', 'orange' );
asort( $fruits );
dd( $fruits );
Run Code Online (Sandbox Code Playgroud)
我得到了正确的数据位置。
array:3 [
1 => "apple"
0 => "guava"
2 => "orange"
]
Run Code Online (Sandbox Code Playgroud)
知道吗,为什么会发生这种情况?我该如何解决这个问题?我使用Laravel 5.1
经过思考,问题在于您的 JSON 响应将按键对数组进行排序。由于您维护与 的索引关联asort(),因此该数组并未真正根据 JSON 进行排序。sort()代替使用。
http://php.net/manual/en/function.sort.php
| 归档时间: |
|
| 查看次数: |
3077 次 |
| 最近记录: |