比如下面是我從資料庫中讀取出來的資料,然後我想以suppliers_id為基準重新排列這個數組,有什麼比較好的方法?
[ { cart_id: "6", suppliers_id: "1", goods_name: "商品1", }, { cart_id: "7", suppliers_id: "1", goods_name: "商品2", } { cart_id: "7", suppliers_id: "1", goods_name: "商品3", }]
變成
[ //suppliers_id 1: [ { cart_id: "6", suppliers_id: "1", goods_name: "商品1", }, { cart_id: "7", suppliers_id: "1", goods_name: "商品3", } ] //suppliers_id 2: [ { cart_id: "7", suppliers_id: "1", goods_name: "商品2", } ]]
回複內容:
比如下面是我從資料庫中讀取出來的資料,然後我想以suppliers_id為基準重新排列這個數組,有什麼比較好的方法?
[ { cart_id: "6", suppliers_id: "1", goods_name: "商品1", }, { cart_id: "7", suppliers_id: "1", goods_name: "商品2", } { cart_id: "7", suppliers_id: "1", goods_name: "商品3", }]
變成
[ //suppliers_id 1: [ { cart_id: "6", suppliers_id: "1", goods_name: "商品1", }, { cart_id: "7", suppliers_id: "1", goods_name: "商品3", } ] //suppliers_id 2: [ { cart_id: "7", suppliers_id: "1", goods_name: "商品2", } ]]
看到標籤是 php
表示無能為力。
如果是在前端處理你倒是可以用 sort(function(a,b){})
這種思路來。
使用PHP的uksort函數,這貨可以接收兩個參數
$arr = [{c:"213"},{c:"dadad"}]function compare_func($a, $b){ return $a=>c - $b=>c;}uksrot($arr,"compare_func" );