function one() {
setVars();
// $node would be in scope
print_r($node);
}
function setVars() {
return $node = '2';
}
这是一个经典的编程概念吗?反射似乎是最接近的东西。基本上,我只想在不同的范围(调用 setVars() 函数的函数的范围/上下文)中定义变量。
function one() {
setVars();
// $node would be in scope
print_r($node);
}
function setVars() {
return $node = '2';
}
这是一个经典的编程概念吗?反射似乎是最接近的东西。基本上,我只想在不同的范围(调用 setVars() 函数的函数的范围/上下文)中定义变量。
对于多个变量,请尝试将它们存储在一个数组中并返回该数组。
function one() {
$nodeArray = setVars();
print_r($nodeArray );
}
function setVars() {
$nodeArray[] = 1;
$nodeArray[] = 1;
$nodeArray[] = 1;
return $nodeArray;
}
看看extract()。
function one() {
$vars = setVars();
extract($vars);
// $node1 would be in scope
print_r($node1);
}
function setVars() {
$node1 = '1';
$node2 = '2';
return compact('node1','node2');
}
应该说,虽然这是可能的,但它通常会导致糟糕的架构和问题。