set*_*kie 4 php arrays multidimensional-array
假设我有一个像这样的多维数组:
<?php
$array = array("test1" => array("test2" => array("test3" => 1)), ... foo1 = array("foo2" => 2));
?>
Run Code Online (Sandbox Code Playgroud)
我想通过将字符串传递"test1.test2.test3"给函数来访问数组元素,该函数又调用数组元素。我可以eval()通过将字符串替换为[](calling $array["test2]["test3"]...) 来使用,但我想知道是否有一种不同的更可靠的方法来调用数组元素,而无需遍历其所有深度或 use eval()。
你可以使用
function get_multi($arr, $str) {
foreach (explode('.', $str) as $key) {
if (!array_key_exists($key, $arr)) {
return NULL;
}
$arr = $arr[$key];
}
return $arr;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1492 次 |
| 最近记录: |