Итак, я хочу отсортировать многомерный массив ниже по возрастанию "fk_page_id".У кого-нибудь есть указатели.Я думаю, что usort () - это то, где я должен искать, но, похоже, я не могу найти кого-либо с моей конкретной структурой массива.
Array ( [0] => Array ( [title] => subpage of subpage! [id] => 5 [long_title] => [fk_page_id] => 4 ) [1] => Array ( [title] => about us subpage [id] => 4 [long_title] => [fk_page_id] => 2 ) [2] => Array ( [title] => about us [id] => 2 [long_title] => [fk_page_id] => 1 ) )
function cmp($a, $b) { if($a['fk_page_id'] == $b['fk_page_id']) { return 0; } else { return $a['fk_page_id'] < $b['fk_page_id'] ? -1 : 1; } } usort($yourarray, 'cmp');
, если вы используете PHP 5.3 +:
define(ASC,1); define(DESC,-1); function colsort($array,$col,$order=ASC) { usort( $array, function($a,$b) use($col,$order) { return strcmp($a[$col],$b[$col])*$order; } ); return $array; } colsort($x,'fk_page_id');