function test($param=null) {
if ($param===null)
.....
}
由于$ param在函数头设置为null,为什么即使打扰测试$ param === null?如果有一个情况$参数不会为空?PHP函数的参数不清楚
function test($param=null) {
if ($param===null)
.....
}
由于$ param在函数头设置为null,为什么即使打扰测试$ param === null?如果有一个情况$参数不会为空?PHP函数的参数不清楚
由于$ param在函数头设置为null,为什么即使打扰测试 if $ param === null?如果有一个情况下$参数不会为空?
也就是说可选参数,因为你定义的null
到它的默认值。
至于为什么要检查它,你想确保一个参数的确是不是null
。
让我们假设你想echo
它:
function test($param=null) {
echo $param;
}
当你调用函数,不会有事的,你不希望这样做,对吧。出于这个原因,你想确保参数的值不为null,以便你可以操纵它,但是你喜欢。
测试:
function test($param=null) {
echo $param;
}
test(); // no output
test('hello there'); // output: hello there
$param
如果没有值传递给函数只会是空的。这是optional parameters的一个例子。
你可以通过传递一个值
test(10); //$param inside the method will be 10;
test(); //$param will be null
这是一个可选/ default argument调用该函数。
如果你调用该函数,那么你可以把它的两种方法之一:
test($value);
或
test();
在第一种情况下,$param
持有$value
值。在第二种情况下,$param
总是null
。
$ param = null只是一个默认变量,当用变量调用该函数时会被覆盖。
如果你调用使用
$helloworld = test('notnull');
然后$ PARAM将在功能上等效 'NOTNULL' 的功能。
案例$ PARAM就不会是空:
test("ok");
在这种情况下,$ PARAM = “OK”。
参数有时会通过函数调用传递。去搞清楚 – 2012-02-26 17:09:19