Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 11th, 2012  |  syntax: None  |  size: 1.63 KB  |  hits: 15  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. sorting by value in a multidimensional array
  2. Array
  3. (
  4. [items] => Array
  5.     (
  6.         [0] => Array
  7.             (
  8.                 [status] => confirmed
  9.                 [summary] => Let's go swimming!
  10.                 [start] => Array
  11.                     (
  12.                         [dateTime] => 2011-12-30T09:00:00-05:00
  13.                     )
  14.  
  15.                 [end] => Array
  16.                     (
  17.                         [dateTime] => 2011-12-30T10:00:00-05:00
  18.                     )
  19.  
  20.             )
  21.  
  22.         [1] => Array
  23.             (
  24.                 [status] => confirmed
  25.                 [summary] => red wine
  26.                 [start] => Array
  27.                     (
  28.                         [dateTime] => 2011-12-28T06:00:00-05:00
  29.                     )
  30.  
  31.                 [end] => Array
  32.                     (
  33.                         [dateTime] => 2011-12-28T07:00:00-05:00
  34.                     )
  35.  
  36.             )
  37.  
  38.         [2] => Array
  39.             (
  40.                 [status] => confirmed
  41.                 [summary] => Christmas
  42.                 [start] => Array
  43.                     (
  44.                         [dateTime] => 2011-12-28T09:30:00-05:00
  45.                     )
  46.  
  47.                 [end] => Array
  48.                     (
  49.                         [dateTime] => 2011-12-28T10:30:00-05:00
  50.                     )
  51.  
  52.             )
  53.      )
  54. )
  55.        
  56. usort($array['items'], function($a, $b){
  57.     if ($a['end']['dateTime'] === $b['end']['dateTime']) return 0;
  58.     else return ($a['end']['dateTime']  > $b['end']['dateTime']) ? -1 : 1;
  59. });
  60.        
  61. $items=array();
  62. foreach($mainarray['items'] as $k=>$v) $items[$v['end']['$dateTime'."-$k"]]=$v;
  63. ksort($items);
  64. $mainarray['items']=array_values($items);