我一直在编写asp,并且想知道这是否可以在php中使用:
$data = getData($isEOF);
function getData($isEOF=false)
{
// fetching data
$isEOF = true;
return $data;
}
函数getData将返回一些数据,但我想知道 - 是否可以在函数内部设置$ isEOF变量,以便可以从函数外部访问它?
感谢
答案 0 :(得分:4)
如果您的函数希望通过引用传递:
,则可以function getData(& $isEOF=false) {
}
请注意变量名称前面的&
,在函数的参数列表中。
有关更多信息,请参阅PHP手册的相关部分:Making arguments be passed by reference
并且,为了快速演示,请考虑以下代码部分:
$value = 'hello';
echo "Initial value : $value<br />";
test($value);
echo "New value : $value<br />";
function test(& $param) {
$param = 'plop';
}
将显示以下结果:
Initial value : hello
New value : plop
答案 1 :(得分:2)
使用全局语句,您可以在任何范围内使用变量。
$data = getData();
function getData()
{
global $isEOF;
// fetching data
$isEOF = true;
return $data;
}
有关详细信息,请参阅http://php.net/manual/en/language.variables.scope.php。
答案 2 :(得分:1)
是的,您需要通过引用传递变量。
请参阅此处的示例:http://www.phpbuilder.com/manual/functions.arguments.php