[英]PHP function byref parameter with default value
我有一个PHP函数,随着业务需求的变化,我需要对其进行更新。 原始功能是这样工作的。
function myFunction($var1, $var2, $var3) {
CODE GOES HERE
}
对于新版本,需要第四个可选参数。 我知道我可以这样做:
function myFunction($var1, $var2, $var3, $var4 = "") {
CODE GOES HERE
}
我创建了新代码,它工作正常。 我刚刚被告知,当为最后一个参数传递值时,它需要是byref。 我在这里搜索了PHP文档和问题,但尚未发现有关此可能性的任何信息。 我认为代码将像这样工作:
function myFunction($var1, $var2, $var3, &$var4 = "") {
CODE GOES HERE
}
这样行吗? PHP是否允许变量通过ref传递,并且如果未传递任何内容,是否也为其设置了默认值?
是的,它确实有效。
请在ideone.com上查看以了解实际效果。
<?php
function test(&$var = "test") {
echo $var;
}
test();
输出
test
但是,有一个警告。 如果您确实传递了参数,则该参数必须是对变量的引用。 以下内容不起作用:
test("Testing");
因为"Testing"
是文字字符串,而不是可引用的变量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.