假设您具有以下数据结构。配置之一是配置值的哈希。搜索是一个哈希键数组,用于从config哈希中提取配置值。
$config['users']['students']['default']['school'] = 'Garfield High';
$config['users']['students']['default']['domain'] = 'ghs.com';
$config['users']['teacher']['default']['fruit'] = 'apple';
$config['school']['superintendent'] = 'Boris York';
$search[] = 'users';
$search[] = 'students';
$search[] = 'default';
$search[] = 'school';
使用$ search数组获取值“ Garfield High”的最有效方法是什么。
这听起来像是学校的作业,但实际上并非如此。我徘徊在兔子洞里,虽然我可能会放弃正在做的事情,但我很好奇如何最好地解决这个问题。似乎应该很容易,但是由于某种原因,我很沮丧。
从$ config中提取值的方法应适用于任何$ search数组大小。它也需要与$ search = array('school','superintendent')一起使用。
public function get($search, $config) {
// Somehow pull value from $config
}
这是一个简单的循环,将的每个元素$search
用作要搜索的数组的下一级的键。
public function get($search, $config) {
$result = $config;
foreach ($search as $key) {
if (is_array($result) && isset($result[$key])) {
$result = $result[$key];
} else {
return false; // not found
}
}
return $result;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句