PHP:具有等号的函数作为参数?

时间:2010-12-16 05:22:43

标签: php function

有人可以向我解释一个函数定义中的变量声明,如下所示。目的是什么?我使用的编码语言是PHP。

function parse( $filename=FALSE ) {
//some code
}

5 个答案:

答案 0 :(得分:5)

这是该函数的默认值。所以如果你调用parse(),那么$ filename将为FALSE。但是,您也可以调用parse(“/ path / to / my / file”)然后$ filename将包含“/ path / to / my / file”

答案 1 :(得分:3)

这意味着当您调用parse函数时,参数可选;如果您未提供值,则会使用FALSE代替。

您可以在“默认参数值”部分中查看php manual的更多详细信息。

答案 2 :(得分:1)

简单地说,它是该参数的默认值。如果在调用parse函数时没有传递$ filename参数,那么$ filename变量将默认为FALSE

function echostring($string = "no string passed") {
echo $string;
}

echostring() // will echo "no string passed"
echostring("hello world") // will echo "hello world"

希望有所帮助

答案 3 :(得分:0)

这是function with default argument value

这意味着在调用函数parse时,传递参数是可选的。如果你没有传递任何参数,变量$filename将采用默认值FALSE,但如果你传递了一个,$filename将采用传递的值。

答案 4 :(得分:0)

它只是参数的默认值,因此如果您未在调用中指定它,该函数仍然有一个值可用于它。

换句话说,如果我写这个函数:

function doStuff($var1, $var2 = false) {
 // do stuff
}

然后调用这样的函数:

 doStuff("thing1");

与调用它完全相同:

 doStuff("thing1", false);

另外,对您的问题稍作澄清:=运算符不是“等号”。它实际上是“赋值运算符”。要检查PHP中的相等性,可以使用==(或===如果要确保类型相同,而不仅仅是值。)