PHP从配置数组获取值

PHP从配置数组获取值,php,Php,我有一个config.php文件,如下所示 return array( "array1"=> array( "array2"=>"value" ) ); 如何使用这样的函数动态提取array2值 function getConfigValue(?) { $config = include("config.php"); return $config.... } 请注意,如果您访问的密钥不在数组中,则此方法会引发错误。您可以通过添加if

我有一个config.php文件,如下所示

return array(
"array1"=>
    array(
      "array2"=>"value"
    )
);
如何使用这样的函数动态提取array2值

function getConfigValue(?)
{
    $config = include("config.php");
    return $config....  
}

请注意,如果您访问的密钥不在数组中,则此方法会引发错误。您可以通过添加
if(isset($value[$key])==false)返回null来改进函数
到匿名函数的开头。因此,您得到的是
NULL
而不是警告消息。实际上,我使用了一个特殊的php框架,它在调用configs时也使用了这种风格+1才华横溢answer@TiMESPLiNTER是的,这肯定会使用更明显的错误消息。但是,
array
类型提示将完全释放程序错误,无需
isset
。如果您不希望硬错误,而是希望软失败,那么手动检查可能更好。这取决于您的优先级和设计目标。
$path  = 'array1.array2';
$value = array_reduce(
    explode('.', $path),
    function (array $value, $key) { return $value[$key]; },
    $config
);