2012-09-01 28 views
0

内置的PHP函数parse_str($ str)解析查询字符串并将其中的变量设置为当前作用域。有没有什么办法让我创建自己的函数来做这样的事情,并将值返回给调用者的范围?如何将变量放入PHP的调用范围中?

实施例:

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的,$值)。将其设定在$$其中函数被调用,以$值范围VARNAME的功能。任何帮助表示赞赏。

回答

2

您无法将变量注入调用作用域。但是,您可以使用extract将关联数组中的键/值转换为本地作用域中的变量。这可能就像你将要得到的一样。

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

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

我应该可以使用它。谢谢。 – Sam