假设我在 PHP 中定义了一个函数,最后一个参数是通过引用传递的。有什么办法可以让它成为可选的吗?如何判断它是否已设置?
我从来没有在 PHP 中使用过引用传递,所以下面可能会有一个愚蠢的错误,但这里有一个例子:
$foo;
function bar($var1,&$reference)
{
if(isset($reference)) do_stuff();
else return FALSE;
}
bar("variable");//reference is not set
bar("variable",$foo);//reference is set
最佳答案
取自 PHP official manual :
NULL可以作为默认值,但不能从外部传入
<?php
function foo(&$a = NULL) {
if ($a === NULL) {
echo "NULL\n";
} else {
echo "$a\n";
}
}
foo(); // "NULL"
foo($uninitialized_var); // "NULL"
$var = "hello world";
foo($var); // "hello world"
foo(5); // Produces an error
foo(NULL); // Produces an error
?>
关于PHP - 使引用参数可选?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16636725/