PHP:函数参数中的参数声明

时间:2012-11-13 23:25:10

标签: php function scope predefined-variables

首先,我不记得这个过程的名称,但它看起来像这样:

function test($alter = FALSE){
    //do stuff
    return $alter;
}

在函数声明中使$ alter = FALSE

这叫什么?这是如何运作的?在以下情况下会发生什么?

$ result = test();

$ result = test(TRUE);

4 个答案:

答案 0 :(得分:4)

如果没有传递其他值,

FALSE被定义为默认值。

对于您的示例,结果(按顺序)为:

FALSE
TRUE

答案 1 :(得分:1)

方法头中定义的FALSE是默认值(如果在调用时没有向参数添加任何内容) - test()否则它的行为类似于普通参数..所以如果调用test(TRUE)值将为TRUE

答案 2 :(得分:1)

没有什么可以添加的除外:您可能记得的术语是“函数重载”,但这不是真正的实现(这只是PHP的“默认参数”可能是类似

答案 3 :(得分:1)

"<?php
echo"welcome";
function a($b=false){
echo"<br /> b: ".$b;
}


a(true);
a();
a("some text");
a(false);

&GT?; 结果:
欢迎
b:1
B:
b:一些文字
b:

似乎如果它的false / null / empty它不会打印任何东西.. 什么你传递给那个方法字符串/布尔什么它打印只要不是空/空。