function test($param=null) {
if ($param===null)
.....
}
既然$param在函数头上设置为 null,为什么还要费心测试如果 $param===null?如果有案例$param不会为空吗?
既然$param在函数头处设置为 null,为什么还要打扰测试 如果$param===空?如果有案例$param不会为空吗?
这是可选参数,因为您定义了默认值null
。
至于为什么要费心检查它,您要确保确实指定了一个参数,该参数不是null
。
假设你想echo
它:
function test($param=null) {
echo $param;
}
当你调用函数时,什么都不会发生,你不想这样做,对吧。出于这个原因,你要确保参数的值不为空,以便你可以随心所欲地操作它。
测试:
function test($param=null) {
echo $param;
}
test(); // no output
test('hello there'); // output: hello there
这是一个可选/默认参数。
如果调用该函数,则可以使用以下两种方式之一调用它:
test($value);
或
test();
在第一种情况下,$param
保存 $value
的值。在第二种情况下,$param
始终null
。
仅当没有值传递给函数时,$param
才会为 null。这是可选参数的示例。
您可以通过传递值来调用该函数
test(10); //$param inside the method will be 10;
test(); //$param will be null
$param=null 只是一个默认变量,当函数被变量调用时会被覆盖。
如果使用调用函数
$helloworld = test('notnull');
然后$param将等于函数中的"notnull"。
$param的情况
不会为空:
test("ok");
在这种情况下,$param = "ok"。