2017-07-18 118 views
0

我需要一些帮助。我需要根据使用PHP的键值对json数组进行排序。我在下面解释我的代码。无法按照键值对数组进行排序使用PHP

$detailsArr = array(
    array('name' => 'Bob', 'active' => 1), 
    array('name' => 'Rachel', 'active' => 0), 
    array('name' => 'Arthur', 'active' => 0), 
    array('name' => 'Paige', 'active' => 1), 
    array('name' => 'Chris', 'active' => 0), 
); 

这里我需要那些有active=1那些会先来。我在下面解释我的代码。

function sortByActive($a, $b){ 
     $a = $a['active']; 
     $b = $b['active']; 

     if ($a == $b) 
     { 
      return 0; 
     } 

    return ($a < $b) ? -1 : 1; 
} 
usort($detailsArr, 'sortByActive'); 

这里我期待输出如下。

$detailsArr = array(
     array('name' => 'Bob', 'active' => 1), 
     array('name' => 'Paige', 'active' => 1), 
     array('name' => 'Rachel', 'active' => 0), 
     array('name' => 'Arthur', 'active' => 0), 
     array('name' => 'Chris', 'active' => 0), 
    ); 

但根据我的代码我无法得到预期的价值。请帮助我。

回答