按列对多维关联数组进行排序并保留第一级键

2024-03-30

我有一个看起来像这样的数组:

$this->wordswithdata = [
    'team1' => [
        'points' => 10,
        'players' => [],
    ],
    'team2' => [
        'points' => 23,
        'players' => []
    ]
];

我想按照每支球队的得分从高到低对球队进行排序。我已经尝试过这个:

function sort_by_points($a,$b)
{
    if ($a['points'] == $b['points']) return 0;
        return ($a['points'] < $b['points']) ? 1 : -1;
}

usort($this->wordswithdata, "sortbycount");

但该方法会覆盖包含团队名称的键并返回:

[
    0 => [
        'points' => 23,
        'players' => []
    ],
    1 => [
        'points' => 10,
        'players' => [],
    ]
]

有没有什么方法可以对数组进行排序而不丢失作为数组键的团队名称?


Use the uasort http://php.net/manual/en/function.uasort.php函数,应该保持 key => value 关联完整。

(旁注:你可以做return $a['points'] - $b['points']而不是 ifs,或者从 php7 开始飞船<=>操作员 https://www.php.net/manual/en/language.operators.comparison.php,感谢 mbomb007 的更新)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

按列对多维关联数组进行排序并保留第一级键 的相关文章

  • 如何在 PHP 中将默认日期设置为波斯日期?

    如何在 PHP 中将默认日期设置为波斯日期 说吧 如果我echo这个功能date Y m d 然后它会显示2018 03 05但我想要1396 12 14波斯日期 请检查 http php net manual en intldatefor
  • 打印一个模式以显示最多 5 行 5 列的数字,例如 5 4 3 2 1 和下一行 4 3 2 1 5 直到第 5 行

    这是一个正方形图案 每行有 5 列 共有 5 行 图案如下所示 5 4 3 2 1 4 3 2 1 5 3 2 1 5 4 2 1 5 4 3 1 5 4 3 2 我的代码如下以获得模式 但当计数器达到 1 并显示在相应的列值中时 我无法重
  • 为什么 SORT_REGULAR 在 PHP 中产生不一致的结果?

    我正在开发一个类 它使 PHP 中的数组排序变得更容易 并且我一直在使用 SORT 常量 但是行为或SORT REGULAR 默认排序类型 似乎有所不同 具体取决于您在数组中添加项目的顺序 此外 我找不到任何模式来解释为什么会出现这种情况
  • 如何在 Javascript 中基于嵌套值过滤数组

    我有一个数组 我试图根据某个嵌套值进行过滤 而不获取任何其他元素 const arrayData country Country X games gameTitle Game1 players name John status Active
  • 如何使用 RewriteRule 来为 PHP 修改 $_SERVER['REQUEST_URI'] ?

    有了这个 htaccess RewriteEngine On RewriteRule foo foo 1 here I tried L PT C etc RewriteRule index php L 我已经尝试了第一个 RewriteRu
  • PHP:如何发送电子邮件基础知识

    我想使用 PHP 从本地主机向其他人发送电子邮件 我需要做什么才能做到这一点 例如我需要安装邮件服务器吗 如果我没记错的话 有一种语言不需要邮件服务器来发送电子邮件 这样对吗 PHP ini里面有 邮件功能 如何配置这个 我在网上查了一下
  • 为什么使用闭包进行赋值而不是直接将值赋给键?

    我当时正在看在 7 10 他添加了一个数据库依赖项并使用闭包来分配值 我的问题是为什么不直接使用直接赋值 我的意思是不这样做 container db capsule 相当于这样做 container db function contain
  • 同一路由组的多个前缀

    我正在为一所学校编写一个相当简单的网站 该网站有新闻 文章 视频剪辑 等 它的工作方式是在主页中我们向访问者展示一些课程 例如 gt math gt geography gt chemistry 用户在其中选择 1 网站内容会根据用户的选择
  • 用一种方法进行 Ruby 选择和拒绝

    是否有任何内置方法可以结合以下功能Enumerable select 找到该块等于 true 的所有内容 和Enumerable reject 找到该块中所有等于 false 的内容 就像是 good bad list magic meth
  • 根据类别 woocommerce 更改同一产品的默认变体值

    我正在研究一种根据其所属类别显示同一产品的默认变体值的方法 例如 我出售一张带有蓝色和红色选项的卡 当用户进入 一 类别时 我希望默认值为蓝色 如果他属于第二类 则该值将为红色 我发现了一个钩子woocommerce product def
  • Laravel 类邮件程序不存在

    我将应用程序从 5 更新到 5 2 现在 当我调用 Mail send 时 它会返回一个异常 Class mailer 不存在 Mail send emails mail data gt content function m use to
  • 如何在 WordPress/WooCommerce 3+ 中向评论表单添加自定义字段

    我正在尝试在产品评论中添加 电话 字段 WooCommerce 3 针对未注册用户 来宾 电话号码只能由管理员在管理面板中看到 电话字段需要填写 Required 我尝试了这段代码 但这不起作用 function true phone nu
  • 扫描 PHP 上传的病毒

    我目前正在使用以下代码来扫描作为申请表的一部分上传的文件 safe path escapeshellarg dir file command usr bin clamscan stdout safe path out int 1 exec
  • 无法在 PHPUnit 中使用数据提供程序运行单个测试

    使用命令行运行测试时遇到问题 如果我像这样运行 phpunit phpunit no configuration filter testAdd DataTest DataProviderTest php 效果很好 但是我们使用正则表达式来准
  • 查找其索引的乘积可被另一个数字 X 整除的对的数​​量

    给定一个数组和某个值 X 找到满足以下条件的对的数量 i lt j a i a j and i j X 0 Array size lt 10 5 我想这个问题有一段时间了 但只能想出蛮力解决方案 通过检查所有对 这显然会超时 O N 2 t
  • phpstorm xdebug 与 symfony2 项目

    我正在尝试使用 xdebug 和 phpstorm 调试 symfony2 应用程序 我的本地开发环境是Ubuntu 14 04 with apache2 Xdebug版本是2 2 7 我在另一个 php 不是 symfony2 项目上使用
  • 在 C# 中何时使用 ArrayList 而不是 array[]?

    我经常使用一个ArrayList而不是 正常 array 当我使用时 我感觉好像我在作弊 或懒惰 ArrayList 什么时候可以使用ArrayList在数组上 数组是强类型的 并且可以很好地用作参数 如果您知道集合的长度并且它是固定的 则
  • 如何在 C# 中获取 Json 数组?

    我有一个像这样的 Json 字符串 我想将它加载到 C 数组中 当我尝试这样做时 我收到异常 我的字符串 customerInformation customerId 123 CustomerName Age 39 Gender Male
  • PHP 中的坏词过滤器?

    我正在用 PHP 编写一个坏词过滤器 我在数组中有一个坏词列表 方法 clean text 的写法如下 public static function cleanse text originalstring if self is sorted
  • MYSQL 按喜欢/不喜欢和受欢迎程度排序

    我有评论表 其中包括喜欢和不喜欢的内容 现在我在正确的顺序上遇到了问题 实际上 我的系统在顶部显示了最多点赞的评论 我正在 youtube 上寻找类似系统的东西 这意味着 100like 100dislikes 的评论的顺序高于 1 1 我

随机推荐