有人看到以下函数有什么问题吗? (编辑:没有,我觉得没有什么是错的,我只是双重检查,因为这会被插入到一个非常常见的代码路径。)PHP - 使用点语法查找数组内容
function getNestedVar(&$context, $name) {
if (strstr($name, '.') === FALSE) {
return $context[$name];
} else {
$pieces = explode('.', $name, 2);
return getNestedVar($context[$pieces[0]], $pieces[1]);
}
}
这将从根本上转变:
$data, "fruits.orange.quantity"
到:
$data['fruits']['orange']['quantity']
对于背景下,这是一种形式公用事业我建立在Smarty的。我也需要表单的名称,所以我需要字符串是基于键的形式,并且不能直接访问Smarty中的Smarty变量。
没有。那个功能应该有问题吗? – echo 2010-02-18 06:34:29
@echo,不,请参阅上面的编辑。我只是不确定我是否错过了一些完全明显的事情,为什么不按照我的方式来做,或者有更简单的方法去做。 – Nicole 2010-02-18 06:49:22