1

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

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

我不确定你为什么要var以这种方式将 a 声明为 null 。我试过在网上寻找答案,但谷歌除了这个例子之外什么都没有。

任何帮助将不胜感激。

4

4 回答 4

2

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

请参阅本手册页上的示例 #3。从那里:

<?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.
于 2013-11-11T20:15:59.267 回答
1

该函数被定义NULL为默认变量的标识符。请参阅PHP 手册中函数文档中的示例 #3

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

另一个例子:

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

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

它将输出:

Hello, Rob
Hello, Tom
Hello, stranger

有关详细信息,请参阅PHP 手册

希望这可以帮助!

于 2013-11-11T20:16:07.647 回答
0

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

例如 :

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

echo foo(); // Will display "default"
echo foo('Hello world!'); // Will display "Hello world!"
于 2013-11-11T20:17:05.870 回答
0

当您将值放入这样的参数中时,如果您不传递任何内容,“lol”(或其他值)将是默认值。

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


   foo(); //'lol';
   foo('new foo'); // new foo
于 2013-11-11T20:17:36.870 回答