php - How i can sort 2 dimensional array? -


how can sort following array

array (     [17] => array         (             [network_id] => 17             [network_name] => m4n             [total_transactions] => 4             [commission] => 6.08             [ordervalue] => 101             [pending] => 0             [approved] => 4         )      [18] => array         (             [network_id] => 18             [network_name] => zanox             [total_transactions] => 32             [commission] => 33.7             [ordervalue] => 1010.45             [pending] => 0             [approved] => 32         ) ) 

i want sort above array following sort options

  • no of transactions (high low)
  • commission (high low)
  • order value (high low)

i trying sort using array_multisort not success far

try

function sort_custom_array($arr,$key,$sort='asc'){  foreach($arr &$r){        $network_id[] = $r['network_id'];        $network_name[] = $r['network_name'];        $total_transactions[] = $r['total_transactions'];        $commission[] = $r['commission'];        $ordervalue[] = $r['ordervalue'];        $pending[] = $r['pending'];        $approved[] = $r['approved'];  }  $sort = ($sort=='asc')? constant('sort_asc') : constant('sort_desc');  switch($key){   case 'network_id':       array_multisort($network_id, $sort, $arr);   break;   case 'network_name':       array_multisort($network_name, sort_natural , $arr);      if($sort==3){        $arr = array_reverse($arr, true);      }   break;   case 'total_transactions':       array_multisort($total_transactions, $sort, $arr);   break;   case 'commission':       array_multisort($commission, $sort, $arr);   break;   case 'ordervalue':       array_multisort($ordervalue, $sort, $arr);   break;   case 'pending':       array_multisort($pending, $sort, $arr);   break;   case 'approved':       array_multisort($approved, $sort, $arr);   break;  }   return $arr; } 

now can sort fields in array below:

$arr1 = sort_custom_array($arr,'ordervalue','desc'); echo "<pre>"; print_r($arr1); 

see demo here


Comments

Popular posts from this blog

python - Subclassed QStyledItemDelegate ignores Stylesheet -

java - HttpClient 3.1 Connection pooling vs HttpClient 4.3.2 -

SQL: Divide the sum of values in one table with the count of rows in another -