PHP array recursive sorting implementation example, php array recursive example
This article describes how to implement recursive sorting of PHP arrays. We will share this with you for your reference. The details are as follows:
/*** Recursively sorts arrays by specific keys * @ param $ data * @ param string $ orderKey * @ param string $ sonKey * @ param int $ orderBy * @ return mixed */ function recursion_orderby ($ data, $ orderKey = 'order', $ sonKey = 'children ', $ orderBy = SORT_ASC) {$ func = function ($ value) use ($ sonKey, $ orderKey, $ orderBy) {if (isset ($ value [$ sonKey]) & is_array ($ value [$ sonKey]) {$ value [$ sonKey] = recursion_orderby ($ value [$ sonKey], $ orderKey, $ sonKey, $ orderBy) ;}return $ value ;}; return array_orderby (array_map ($ func, $ data), $ orderKey, $ orderBy);} $ a = [['order' => 0,], ['order' =>-1, 'Children '=> [['order' => 0,], ['order' =>-2, 'Children '=> [['order' => 0], ['order' =>-1], ['order' => 1],], ['order' => 2,],]; var_dump (recursion_orderby ($ )); /*** output: array (3) {[0] => array (2) {'order' => int (-1) 'Children '=> array (2) {[0] => array (2) {'order' => int (-2) 'Children '=> array (3) {[0] => array (1) {'order' => int (-1)} [1] => array (1) {'order' => int (0 )} [2] => array (1) {'order' => int (1) }}[ 1] => array (1) {'order' => int (0) }}[ 1] => array (1) {'order' => int (0 )} [2] => array (1) {'order' => int (2 )}}*/
Note:Herearray_orderby
The method is described in the previous article "usage of php custom two-dimensional array sorting function array_orderby ".
PS: here we recommend a demo tool for sorting for your reference:
Online animation demo insert/select/bubble/merge/hill/Quick Sort Algorithm process tool:
Http://tools.jb51.net/aideddesign/paixu_ys