高级array_key_exists函数

时间:2015-12-08 11:34:32

标签: php arrays

我有这个数组:

$test['first']['second']['third']='test';

我想写这个功能:

function check_array_key_path_exists($test, $path){
    $path_keys = explode('.', $path);
/*
some code
return true/false
*/
}

我希望看到这种效果

check_array_key_path_exists($test, 'first.second.dog'); //false
check_array_key_path_exists($test, 'first.second'); //true
check_array_key_path_exists($test, 'second'); //false
check_array_key_path_exists($test, 'first.second.third'); //true
check_array_key_path_exists($test, 'first.second.third.dog.cat'); //false

2 个答案:

答案 0 :(得分:1)

简单!这是代码:

vector<vector<T>>

这打印为真。希望这是你想要的。

答案 1 :(得分:-1)

您可以尝试递归检查路径的每个段。不知何故这样(未经测试):

function array_key_path_exists($array, $path) {
    $split = explode('.', $path, 2);
    if (array_key_exists($array, $split[0])) {
        if (!empty($split[1])) {
            return array_key_path_exists($array[$split[0]], $split[1]);
        } else {
            return true;
        }
    }
}