php - 声明为null的函数变量。为什么?

时间:2013-11-11 20:14:13

标签: php function

我一直在编辑现有的php脚本,并且遇到了一个函数

function functionName($var1 = null, $var2 = null, $var3 = null)

我不确定为什么你会以这种方式将var声明为null。我曾尝试在网上寻找答案,但谷歌拉起了这个例子。

非常感谢任何帮助。

4 个答案:

答案 0 :(得分:2)

这些是默认值:调用函数时不必指定它们。省略它们时,将使用默认值。

请参阅example #3 on this manual page.从那里:

<?php
function makecoffee($type = "cappuccino")
{
    return "Making a cup of $type.\n";
}
echo makecoffee();
echo makecoffee(null);
echo makecoffee("espresso");
?>

将输出

Making a cup of cappuccino.
Making a cup of .
Making a cup of espresso.

答案 1 :(得分:1)

该函数定义为NULL作为默认变量的标识符。有关PHP手册中函数的文档,请参阅example #3

参数$var1是可选的,不是必需的。如果指定,将使用给定值。如果不是,将使用指定为默认值的值。

另一个例子:

function sayHello($person = 'stranger') {
    return "Hello, $person";
}

echo sayHello('Rob');
echo sayHello('Tom');
echo sayHello();

将输出:

Hello, Rob
Hello, Tom
Hello, stranger

有关详细信息,请参阅PHP manual

希望这有帮助!

答案 2 :(得分:0)

这只是一个默认值:当您调用该函数时,如果您没有将值设置为$ var,它将采用默认值。

例如:

function foo($bar = 'default')
{
    return $bar;
}

echo foo(); // Will display "default"
echo foo('Hello world!'); // Will display "Hello world!"

答案 3 :(得分:0)

当你把一个值放入这样的参数时,如果你没有传递任何'lol'(或其他值)将是默认值。

   function foo($param1 = 'lol'){
     echo $param1;
   }


   foo(); //'lol';
   foo('new foo'); // new foo