note 118871 deleted from function.usort by crell

From: Date: Wed, 30 Mar 2022 22:25:00 +0000
Subject: note 118871 deleted from function.usort by crell
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-217827@lists.php.net to get a copy of this message
Note Submitter: Nsisodia91 at gmail dot com ---- You can also sort multi-dimensional array for multiple values like as <?php $arr = [ [ "name"=> "Sally", "nick_name"=> "sal", "availability"=> "0", "is_fav"=> "0" ], [ "name"=> "David", "nick_name"=> "dav07", "availability"=> "0", "is_fav"=> "1" ], [ "name"=> "Zen", "nick_name"=> "zen", "availability"=> "1", "is_fav"=> "0" ], [ "name"=> "Jackson", "nick_name"=> "jack", "availability"=> "1", "is_fav"=> "1" ], [ "name"=> "Rohit", "nick_name"=> "rod", "availability"=> "0", "is_fav"=> "0" ], ]; usort($arr,function($a,$b){ $c = $b['is_fav'] - $a['is_fav']; $c .= $b['availability'] - $a['availability']; $c .= strcmp($a['nick_name'],$b['nick_name']); return $c; }); print_r($arr); ?> Output: Array ( [0] => Array ( [name] => Jackson [nick_name] => jack [availability] => 1 [is_fav] => 1 ) [1] => Array ( [name] => David [nick_name] => dav07 [availability] => 0 [is_fav] => 1 ) [2] => Array ( [name] => Zen [nick_name] => zen [availability] => 1 [is_fav] => 0 ) [3] => Array ( [name] => Rohit [nick_name] => rod [availability] => 0 [is_fav] => 0 ) [4] => Array ( [name] => Sally [nick_name] => sal [availability] => 0 [is_fav] => 0 ) )

« previous php.notes (#217827) next »