svk*_*svk 0 php arrays sorting
我有一个如下所示的数组.
$array[0]['keyword'] = 'cricket ';
$array[0]['noofhits'] = '26';
$array[1]['keyword'] = 'food ';
$array[1]['noofhits'] = '17';
$array[2]['keyword'] = 'mypax';
$array[2]['noofhits'] = '22';
$array[3]['keyword'] = 'next';
$array[3]['noofhits'] = '22';
$array[4]['keyword'] = 'nextbutton';
$array[4]['noofhits'] = '22';
$array[5]['keyword'] = 'picture';
$array[5]['noofhits'] = '18';
Run Code Online (Sandbox Code Playgroud)
我想使用noofhits对数组进行排序.我能怎么做?预先感谢您的建议.
上一个的Soory.Thanks你的答案.
使用usort带有自定义比较函数:
function cmp($a, $b) {
return $a['noofhits'] - $b['noofhits'];
}
usort($array, 'cmp');
Run Code Online (Sandbox Code Playgroud)
usort 期望比较函数返回三个不同的值:
所以我们可以简单地从a中减去b的值.如果a的值大于b的值,则减法产生正整数; 如果a的值等于b的值,则产生0; 如果a的值小于b的值,则产生负值.