Rumah >pembangunan bahagian belakang >tutorial php >php函数之默认参数函数

php函数之默认参数函数

伊谢尔伦
伊谢尔伦asal
2017-05-11 13:57:266537semak imbas

php默认参数函数介绍

在PHP中,支持函数的默认方式调用,即为参数指定一个默认值。上一节介绍了php函数之引用参数函数,在调用函数时如果没有指定参数的值,在函数中会使用参数的默认值。默认值必须是常量的表达式,不能是变量、类成员或者函数调用。PHP还允许使用数组和特殊类型 NULL 作为默认参数。

php默认参数的函数格式说明如下:

mixed funName(string name[, string value [, int expire]])    //参数列表中出现使用 [ ] 描述参数

在定义函数时声明了参数,而在调用函数时没有指定参数或是少指定了参数,就会出现缺少参数的警告。

下面通过一个实例来对默认参数进行说明:

<?php
 //自定义一个函数person,用于打印一个人的属性
 function person($name="张三", $age=20, $sex="男"){
   echo "姓名:{$name}, 年龄:{$age}, 性别:{$sex} <br>";
 }
 person();               //全部使用默认参数
 person("李四");            //第一个默认参数被覆盖,后面两个参数为默认
 person("李四",22);          //前两个默认参数被覆盖,后面一个参数为默认
 person("李四",22,"女");        //三个默认参数都被覆盖
?>

该程序执行后输出结果如下:

姓名:张三, 年龄:20, 性别:男 

姓名:李四, 年龄:20, 性别:男 

姓名:李四, 年龄:22, 性别:男 

姓名:李四, 年龄:22, 性别:女 

在上面的实例中声明了一个名为 person() 并带有三个参数的函数,其中的三个参数都被默认附上了初始值,即默认参数。在调用该函数时,如果少传或者不传参数,参数将使用默认的值。如果用户在调用函数时传值,则使用传入的值。

 当调用函数传递参数时,实参和形参是按照顺序对应传递数据的,如果实参数少于形参,则右边的形参不会被传值。当使用默认参数时,任何 默认参数必须放在任何非默认参数的右侧,否则,可能函数将不会按照预期的情况进行工作。

例如,下面的函数声明就是函数默认参数不正确的用法。后面两个参数没有被传值,也没有默认值,在调用时出现警告。

下面通过一个例子来说明:

<?php
 //自定义一个函数person,用于打印一个人的属性
 function person($name="张三", $age, $sex){
   echo "姓名:{$name}, 年龄:{$age}, 性别:{$sex} <br>";
 }
 person("李四");    //第一个默认参数被覆盖,后面两个参数没有传值,会出现两条警告信息
?>

说明:只需要将函数头部的参数列表中,默认参数列在所有没有默认值的参数的后面,该程序就可以正确的执行。在上面的代码中,函数 person() 在调用时,前两个参数时必须传值的参数,如果不传之则会出现错误;而最后一个参数是可选的参数,如果不传值则使用默认的值。

【相关教程推荐】

1. 《php.cn独孤九贱(4)-php视频教程

2.  php编程从入门到精通全套视频教程

3.  php实战视频教程

Atas ialah kandungan terperinci php函数之默认参数函数. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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