sort multidimension array

From: Date: Thu, 22 Jun 2006 01:22:25 +0000
Subject: sort multidimension array
Groups: php.general 
Request: Send a blank email to php-general+get-238494@lists.php.net to get a copy of this message
Hi all, I have multi-arrays as shown below: I implemented usort() to sort the array by 'country' field in the array. However there some empty string value in the array and i setup my cmpcountry() function to sort array, however , some country empty string value are sort first . Any ideas what happen in the cmpcountry() function ? The result of sort array below is : Singapore Singapore Thailand '' Thailand '' '' Malaysia Phillipines function cmpcountry($a, $b) {
        $country1 = $a['country'];
        $country2 = $b['country'];
        if($country1 == ''){
if($country1 < $country2){
		    return 1;
} }
        if($country2 == '') {
if($country1 < $country2){
		    return 1;
} } return ($country1 < $country2) ? -1 : 1; } usort($arraytest,"cmpcountry"); $arraytest= array(
     array
        (
            'country' => 'Thailand',
            'city' => 'Z'
        )
     ,
     array
        (
            'country' => 'Thailand',
            'city' => 'M'
        )
     ,
     array
        (
            'country' => 'Singapore',
            'city' => 'G'
        )
     ,
     array
        (
            'country' => 'Singapore',
            'city' => 'B'
        )
     ,
     array
        (
            'country' => '',
            'city' => 'U'
        )
      ,
array
        (
            'country' => '',
            'city' => 'Y'
        )
, array
        (
            'country' => '',
            'city' => 'J'
        )
     );


« previous php.general (#238494) next »