如何将变量放入PHP中的调用范围?

时间:2012-09-01 03:05:02

标签: php

内置的PHP函数parse_str($ str)解析查询字符串并将其中的变量设置为当前范围。有没有办法让我创建自己的函数来执行类似这样的操作并将值返回给调用者的范围?

示例:

function checkset()
{
    global $inputs;
    for( $counter = 0, $varname = func_get_arg($counter), $counter++)
    {
        if(isset($inputs[$varname]))
        {
            calling_scope( $varname, $inputs[$varname] );
        }
    }
    return;
}

其中calling_scope($ varname,$ value)是一个函数,它在函数调用$ value的范围内设置$$ varname。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:2)

您无法将变量注入调用范围。但是,您可以使用extract将关键数组中的键/值转换为本地范围中的变量。这可能就像你将要获得的那样接近。

function checkset() {
  return array('name' => 'bob', 'age' => 45);
}

extract(checkset());
echo $name; // bob
echo $age;  // 45