$list 是这样填充的: -$list[$i++] = array( "date" => $date, "desc" => $desc, "priority" => $priority); 如果 $priority 与某些条件匹配,则将其设置为 TRUE。我希望 $list 与顶部具有优先级 TRUE 的行进行排序。该列表已按我希望保留的日期排序。 最佳答案 在 PHP>=5.3 中usort ($array, function ($left, $right) { return $left['priority'] - $right['priority'];});或者在早期版本中function cmp($left, $right) { return $left['priority'] - $right['priority'];}usort($array, 'cmp');或使用 create_function() (也适用于版本 usort ($array, create_function('$left,$right', 'return $left[\'priority\'] - $right[\'priority\'];'));这是有效的,因为 (int) true === 1 和 (int) false === 0true - true == 0true - false == 1false - true == -1false - false == 0关于php - 按 bool 字段对关联数组进行排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5897745/ 10-12 12:53