php自定义函数的参数默认值用法详解

伊谢尔伦
Lepaskan: 2023-03-11 13:20:01
asal
6380 orang telah melayarinya

任何有效的 PHP 代码都有可能出现在函数内部,甚至包括其它函数和类定义。

函数名和 PHP 中的其它标识符命名规则相同。有效的函数名以字母或下划线打头,后面跟字母,数字或下划线。

可以用正则表达式表示为:[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*。

php自定义函数接受参数的时候可以直接给赋默认值

function TestStr($str)
{
return $str."是一个字符串";
}
echo TestStr("abcdef")."</br>";
Salin selepas log masuk

上面这个自定义函数接受一个参数,如果我们调用的时候 TestStr() ;不给参数会是什么情况呢?

直接报错:Warning: Missing argument 1 for TestStr()

所以开发的过程中为了避免上面的错误我们一般要在自定义函数的时候给参数赋默认值,如下

function TestStr2($str="kkkkk")
{
return $str."是一个字符串";
}
Salin selepas log masuk

现在调用 TestStr2() 不出错,直接输出 kkkkk是一个字符串,当然你传出参数后会替换掉默认参数.

第三种情况:

有2个以上参数的时候,如果不是全部给出默认值,一定要按照从右到左的参数依次给出默认值.如下就是错误的事例

function TestStr3($str =&#39;mmmmm&#39; ,$para)
{
return $str."和".$para."都是字符串";
}
Salin selepas log masuk

上面并没有遵循从右到做给出默认值,而是最左边的给出了一个默认值.

当我们调用函数的时候 TestStr3("第一个参数"); 我们期望的是第一个参数以默认值代替,第二个参数用传入参数代替.但是不是这样的,替换参数的顺序是从左到右.所以第二个参数不但没有传入值,连默认值都没有,所以直接报错

正确的默认值应该是这样的

function TestStr3($str,$para=&#39;mmmmm&#39;)
{
return $str."和".$para."都是字符串";
}
Salin selepas log masuk

然后输出:

第一个参数和mmmmm都是字符串

Atas ialah kandungan terperinci php自定义函数的参数默认值用法详解 . Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!