0,"detai-6ren">
gpt4 book ai didi

php - PHP函数获取带路径的递归路径键

转载 作者:行者123 更新时间:2023-12-02 06:40:47 25 4
gpt4 key购买 nike

给定一个数组,我想要一个数组键的扁平版本。到目前为止,每个数组键都需要数组的“路径”,并带有下划线。

一个例子可以很好地说明这一点。

$arr = array("location"=>0,"details"=>array("width"=>0,"height"=>0,"level"=>array("three"=>0)));

function answer($arr) {....}

答案函数将返回以下内容:
array("location","details_width","details_height","details_level_three");

更新:

这是正在进行的工作。它将接受一个数组并返回数组键,但是没有深度:
function recursive_keys($input)
{
$output = array_keys($input);
foreach($input as $sub){
if(is_array($sub)){
$output = array_merge($output, recursive_keys($sub));
}
}
return $output;
}

最佳答案

function recursive_keys(array $array, array $path = array()) {
$result = array();
foreach ($array as $key => $val) {
$currentPath = array_merge($path, array($key));
if (is_array($val)) {
$result = array_merge($result, recursive_keys($val, $currentPath));
} else {
$result[] = join('_', $currentPath);
}
}
return $result;
}

此处演示: http://codepad.viper-7.com/WQ3UYI

关于php - PHP函数获取带路径的递归路径键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8392619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com