You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查找PHP多维数组中指定user_id对应的父数组键名?

解决方案

方法一:循环遍历(兼容所有PHP版本)

直接遍历原数组,逐个校验子数组的user_id,匹配到目标值时返回对应的父数组键:

$original = [
    ['user_id' => 1234],
    ['user_id' => 9876]
];

$targetUserId = 9876;
$parentKey = null;

foreach ($original as $key => $item) {
    if (isset($item['user_id']) && $item['user_id'] === $targetUserId) {
        $parentKey = $key;
        break; // 找到后立即终止循环,提升效率
    }
}

// 输出结果
echo $parentKey; // 输出 1

方法二:array_column + array_search(PHP 5.5+)

用array_column提取所有子数组的user_id值并保留原父键,再通过array_search快速定位目标值对应的键:

$original = [
    ['user_id' => 1234],
    ['user_id' => 9876]
];

$targetUserId = 9876;
// 提取所有user_id,保留原数组的键结构
$userIdMap = array_column($original, 'user_id');
$parentKey = array_search($targetUserId, $userIdMap);

echo $parentKey; // 输出 1

额外说明

  • 如果数组中存在多个相同的user_id,array_search仅返回第一个匹配的键;循环遍历的方式可修改为收集所有匹配的键。
  • 若子数组可能缺失user_id键,建议保留isset($item['user_id'])的校验,避免触发错误。

内容的提问来源于stack exchange,提问作者MarcusDeroy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 22:40:44