dtrotfd1012 2017-11-03 23:02
浏览 294
已采纳

如何检查多维数组中是否存在特定的数组键

if i'm accessing an index like that

$var = $final_Length_Array[1][0]['id'];

how to check whether the "id" key index exist in the array or not.

i tried to use function array_key_exists but it seems to be working only on one dimension array.

i tried it like if(array_key_exists('id',$final_Length_Array)){ but it didn't work

i also tried isset to check whether there is a result or not but it didn't work also if(isset($final_Length_Array[1][0]['id'])){

any help i'll be appreciate it

  • 写回答

1条回答 默认 最新

  • duanqu9292 2017-11-03 23:27
    关注

    Super hacky solution:

    function array_key_exists_recursive($array, $key) {
        return strpos(json_encode($array), "\"" . $key . "\":") !== false;
    }
    

    Better solution:

    $array = ['a' => ['b' => 'c']];
    function array_key_exists_recursive($key, $array) {
        if (array_key_exists($key, $array)) {
            return true;
        }
        foreach($array as $k => $value) {
            if (is_array($value) && array_key_exists_recursive($key, $value)) {
                return true;
            }
        }
        return false;            
    }
    
    var_dump(array_key_exists_recursive('b', $array));
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 使用MATLAB进行余弦相似度计算加速
  • ¥15 服务器安装php5.6版本
  • ¥15 我想用51单片机和数码管做一个从0开始的计数表 我写了一串代码 但是放到单片机里面数码管只闪烁一下然后熄灭
  • ¥20 系统工程中,状态空间模型中状态方程的应用。请猛男来完整讲一下下面所有问题
  • ¥15 我想在WPF的Model Code中获取ViewModel Code中的一个参数
  • ¥15 arcgis处理土地利用道路 建筑 林地分类
  • ¥20 使用visual studio 工具用C++语音,调用openslsx库读取excel文件的sheet问题
  • ¥100 寻会做云闪付tn转h5支付链接的技术
  • ¥15 DockerSwarm跨节点无法访问问题
  • ¥15 使用dify通过OpenAI 的API keys添加OpenAI模型时报了“Connection Error”错误