PHP函数参数my#u func($param=';';)
我今天看到一些我不懂的PHP,有人能给我解释一下吗PHP函数参数my#u func($param=';';),php,Php,我今天看到一些我不懂的PHP,有人能给我解释一下吗 function my_func($param='') { if (empty($param)) { return false; } else { return true; } } 我不明白的是$param变量被分配了一个空字符串,但在函数内部却不是空的?这只是一个默认值吗?是的,您可以在PHP中为参数指定一个默认值。例如,您可以使用my_func(“无空字符串
function my_func($param='')
{
if (empty($param))
{
return false;
}
else
{
return true;
}
}
我不明白的是$param变量被分配了一个空字符串,但在函数内部却不是空的?这只是一个默认值吗?是的,您可以在PHP中为参数指定一个默认值。例如,您可以使用my_func(“无空字符串”)覆盖它 是的,您可以在PHP中为参数指定默认值。例如,您可以使用my_func(“无空字符串”)覆盖它 你的假设是正确的;这允许开发人员为参数指定默认值 如果调用代码未传递参数值,则函数返回false。否则,
$param
为非空,函数返回true
这段代码的一个潜在缺陷是传递参数时带有空值(0、null等)。即使传递了参数,代码仍将返回
false
。您的假设是正确的;这允许开发人员为参数指定默认值
如果调用代码未传递参数值,则函数返回false。否则,$param
为非空,函数返回true
这段代码的一个潜在缺陷是传递参数时带有空值(0、null等)。即使传递了一个参数,代码仍将返回
false
。是的,函数声明括号内的变量是一个默认值,因此您可以这样调用函数:
echo my_func();
无需实际将变量传递给函数。是的,函数声明括号内的变量是一个默认值,用于如下调用函数:
echo my_func();
my_func("string") //makes $param "string"
my_func() //picks default making $param ''
根本不需要向函数实际传递变量
my_func("string") //makes $param "string"
my_func() //picks default making $param ''
您可以有必需的和可选的参数,如
function my_func($param1, $param2='default')
您不能将可选参数置于所需参数之后
function my_func($param1='', $param2) //gives errors.
您可以有必需的和可选的参数,如
function my_func($param1, $param2='default')
您不能将可选参数置于所需参数之后
function my_func($param1='', $param2) //gives errors.
PHP函数文档:可能与@Shiplu重复,我不同意。这个问题有点不同,它没有参考默认参数值。谢谢大家,不好意思,我不能接受多个答案:(PHP函数文档:可能重复@Shiplu我不同意。这个问题有点不同,它没有参考默认参数值。谢谢大家,不好意思,我不能接受多个答案:(