php - 对内部有两个数组的多维数组进行排序?
问题描述
我想根据另一个数组表示的值对我的数组进行排序。所以,这就是我的数组:
Array
(
[0] => Array
(
[0] => 13.31421
[1] => WP_Post Object (...)
)
[1] => Array
(
[0] => 4.213
[1] => WP_Post Object (...)
)
[2] => Array
(
[0] => 144.314
[1] => WP_Post Object (...)
)
)
我想按索引0
上的数字对我的数组进行排序,例如在 index: [0][0]
= 13.31421
。
我已经尝试在谷歌上找到一些答案,但解决方案并没有真正奏效:
uasort($post_distance, function($a, $b) {
return $a[0] - $b[0];
});
解决方案
尝试使用 usort 功能。
usort ( array &$array , callable $value_compare_func ) : bool
将此方法添加到您的代码中
function compare($a, $b)
{
if ( $a[0] == $b[0] ) {
return 0;
}
return ( $a[0] < $b[0] ) ? -1 : 1;
}
然后只需调用 usort 函数
usort($post_distance,"compare");
推荐阅读
- html - 使项目仅在 xs 屏幕的下拉按钮中可见
- python - TypeError:预期的字符串或类似字节的object.in django
- c# - 循环中的异步睡眠
- python - 为什么我得到具有相同纬度和经度的不同 h3 索引
- android - Unity - Android 10 - BLE 蓝牙 - 背景位置
- spring-security - 如何为动态用户数配置 Spring Security
- python - 你知道为什么过滤后的输出总是从零开始吗?辛辣过滤蟒蛇脑电图
- amazon-web-services - 如何使用 vpc 安全组来限制对我的 Lambda 的入站访问?
- python - 如何在 Python 中用烧瓶形式替换标准输入()
- azure - Azure AD 令牌验证 - 为什么要验证颁发者?