首页 > 解决方案 > 使用子值从多维数组中获取“主”键

问题描述

我有以下数组:

$array = array(
    [45] => [
        account_id => 1
        ],
    [75] => [
        account_id => 2
        ]
)

我有以下 PHP 代码:

$key = array_search(1, array_column($array, 'account_id'));

当我执行 var_dump($key) 时,输出为 int(0)。但我需要'45'(或在 account_id 2 的情况下为'75')。

这个问题的解决方案是什么?

标签: phparrays

解决方案


您可以使用array_combine()来合并值和键。

$array = array(
    45 => [
        'account_id' => 1
        ],
    75 => [
        'account_id' => 2
        ]
);

$key = array_search(1, array_combine( array_keys( $array ), array_column ( $array , 'account_id' ) ) );

这将导致:45


推荐阅读