使用PHP对数组中HH:mm格式的字符串进行排序

使用PHP对数组中HH:mm格式的字符串进行排序,php,arrays,sorting,usort,Php,Arrays,Sorting,Usort,我有一个这样的数组: $x = array( array( 'inicio' => '09:00', 'fim' => '09:30' ), array( 'inicio' => '09:30', 'fim' => '10:00' ), array( 'inicio' => '08:30', 'fim' => '09:00'

我有一个这样的数组:

$x = array(
    array(
        'inicio' => '09:00',
        'fim' => '09:30'
    ),
    array(
        'inicio' => '09:30',
        'fim' => '10:00'
    ),
    array(
        'inicio' => '08:30',
        'fim' => '09:00'
    ),
    array(
        'inicio' => '11:30',
        'fim' => '12:00'
    )
);
我必须通过
inicio
字段对其进行排序。我试图像这样使用
usort
但结果只得到1:

$y = usort($x, function($a, $b) {
    return (explode(':', $b['inicio'])[0]*60 + explode(':', $b['inicio'])[1]) - (explode(':', $a['inicio'])[0]*60 + explode(':', $a['inicio'])[1]);
});

print_r($y);
我在这里做错了什么?

1st,不返回数组,它已排序到位。医生说:

成功时返回TRUE,失败时返回FALSE

第二,您可以比较inicio字段

usort($x, function ($a, $b) { return strcmp($a['inicio'], $b['inicio']); });
print_r($x);
第一,不返回数组,它被排序到位。医生说:

成功时返回TRUE,失败时返回FALSE

第二,您可以比较inicio字段

usort($x, function ($a, $b) { return strcmp($a['inicio'], $b['inicio']); });
print_r($x);

非常感谢你。很遗憾,我没有在文档中看到这一点。非常感谢。很遗憾,我没有在文档中看到这一点。