php - 从包含元素的键的值枚举多维 PHP 数组上的键的最优雅的方法是什么?

标签 php mysql

假设我有一个多维数字零索引数组,如下所示:

$oldArray = (
    0 => array("importantKey" => "1", "otherKey" => "someValue"),
    1 => array("importantKey" => "4", "otherKey" => "someValue"),
);

如果我可以确定“importantKey”的唯一性,那么将其映射到以下内容的最简洁的方法是什么

$newArray = (
    1 => array("otherKey" => "someValue"),
    4 => array("otherKey" => "someValue"),
);

在对“importantKey”执行 GROUP BY 子句后从数据库中检索多行时,这很有用

最佳答案

试试这个

$newArray = array_reduce($oldArray, function($res, $val) {
    $res[$val['importantKey']]['otherKey'] = $val['otherKey'];

    return $res;
}, array());

这样够优雅吗? :)

关于php - 从包含元素的键的值枚举多维 PHP 数组上的键的最优雅的方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16276645/

相关文章:

java - 使用外部服务器reSTLet框架

mysql - "Cannot convert to a SELECT statement"是什么意思

mysql - 左连接,但如果连接表包含条目则排除

php - MYSQL加入帮助。根据单独评论表中的评论数量获取结果?

php - 加密/解密方法

php - OOP 方法链接可选返回

php - 如何将SESSION变量传递给父目录中的页面?

php - 在 PHP 中去除新行

javascript - 使用 Node.js MySQL 库的正确方法是什么?

php - 查询在本地主机上工作但不在实时服务器上工作