7

I have multidimensional array that i want to sort by field containing unix timestamp:

 Array ( 
[0] => Array ( [0] => 723 [1] => 1442008738 ) 
[1] => Array ( [0] => 721 [1] => 1386802800 ) 
[2] => Array ( [0] => 718 [1] => 1356994800 ) 

) 

But when i use Usort, it just returns 1. What am i doing wrong?

function date_compare($a, $b)
{
    $t1 = $a[1];

    $t2 = $b[1];
    return $t1 - $t2;
}    
print_r(usort($dosortowania2, 'date_compare'));
1
  • 4
    RTFM - usort returns a Boolean true/false to indicate if successful or not, the array argument is pass by reference
    – Mark Baker
    Commented Sep 11, 2015 at 10:11

1 Answer 1

20

usort (http://php.net/usort) performs the sort directly on the provided array. The return value just returns boolean telling if the sorting suceeded.

usort($dosortowania2, 'date_compare');
print_r($dosortowania2);

Not the answer you're looking for? Browse other questions tagged or ask your own question.