长话短说,我有以下功能作为我的框架的一部分:
public function use_parameters()
{
$parameters = func_get_args();
$stack = debug_backtrace();
foreach($stack[0]['args'] as $key => &$parameter)
{
$parameter = array_shift($this->parameter_values);
}
}
$this->parameter_values = array('value1', 'value2', 'value3', 'value4', 'value5', ...);
在以下情况下使用:
$instance->use_parameters(&$foo, &$bah);
分配:
$foo = 'value1';
$bah = 'value2';
再次调用它
$instance->use_parameters(&$something);
将设置
$something = 'value3'
等等。
从 5.3 开始,它将返回“已弃用:调用时传递引用已被弃用”警告。为了符合 5.3 的工作方式,我删除了 & 的结果:
$instance->use_parameters($foo, $bah);
不幸的是,这导致无法设置论点,我正在努力想出一个解决方案。
为了它的价值,我在 Apache/2.2.16 (Debian) 上运行 PHP v5.3.3-7
任何帮助将不胜感激。