开发者社区 问答 正文

PHP多维数组按值搜索

我有一个要在其中搜索uid并获取数组键的数组。

例子 假设我们有以下二维数组:

    array(
        'uid' => '100',
        'name' => 'Sandra Shush',
        'pic_square' => 'urlof100'
    ),
    array(
        'uid' => '5465',
        'name' => 'Stefanie Mcmohn',
        'pic_square' => 'urlof100'
    ),
    array(
        'uid' => '40489',
        'name' => 'Michael',
        'pic_square' => 'urlof40489'
    )
);

函数调用search_by_uid(100)(第一个用户的uid)应返回0。

函数调用search_by_uid(40489)应返回2。

我尝试进行循环,但是我想要更快的执行代码。

展开
收起
社区秘书 2019-12-10 11:34:00 1192 分享 版权
1 条回答
写回答
取消 提交回答
  • 可以先把二维数组转换为键值对的形式,以uid为key,array为value,例如:

    array(
    "40489"=> array(
            'uid' => '40489',
            'name' => 'Michael',
            'pic_square' => 'urlof40489'
     )
    )
    

    这样的形式,然后直接通过key索引就可以了。

    2020-03-31 16:12:37
    赞同 展开评论