当前课程知识点:PHP程序设计 > PHP函数 > 函数参数传递 > 函数参数传递2
我们来再讲一下默认参数的问题
来
php里面可以定义可选参数
这个是和我们其他编程语言
不一样的一个地方
那么定义可选参数在什么位置
首先它要放在参数列表的末尾
我们的这个例子
参数列表里面只有一个参数
那么如果有多个参数的话
我们所设定的可选参数
也要放在末尾
而且这个可选的参数
必须有默认值
同学们可以看到
我们括号里面写参数的
一般的参数都是直接写参数名
但是这个可选参数
我们必须给一个赋值
当然了你说我们赋值可以是空的
那么空的你也要写上等于号
双引号引起来的是一个空字符串
那么这个参数有什么用
刚才说了可选参数
也就是说
它在我们函数调用的时候
是可以选择的
比如说我们在这个地方
function定义的是一个values
这样子的一个函数
自定义的函数
那values在调用的时候我们发现
我们第一个括号里面是
100,0.25
100这个实际参数
很显然是赋值给价格的
对不对
那么0.25呢
是赋值给我们的可选参数的
可选参数我默认的是一个空的
但是我这个地方可以给它设值
对吧
可以给它设任意的值都是可以的
那么或者可选参数
我们也可以不选它
所以比如说第二次调用的时候
我们调用values括号里面
只传递了一个100进去
只传递了个100就意味着
我们只是把价格的参数
给它做了一个实参的赋值
后面的可选的我们不赋值
不赋值按照什么来
按照它的默认值来
所以我们第一个values输出的价格
我们是不是要经过一个计算
100+100×0.25
所以它的价格是125
那么第二个values
我们只有价格100
那么价格100
我们继续在里面计算的时候
是100+()
这是100乘以多少
0对不对
因为这个可选参数默认值是0
那么乘0
那么100+100×0
答案还是100对吧
那么这个默认参数
特别要注意的两点
一会同学们练习的时候要做一下
第一个就是我们可选参数
能不能不放在参数列表的末尾
比如说
大家把自己的代码
重新的设置一下
把我们的到了$tax的这个
税金的可选参数调整到前面来
看看是不是正确的
当然了
我刚才说了一定要放在后面
很显然是会报错的
所以可选参数一定要放在
参数列表的末尾
这个答案是不可以
对吧
同样的还有一个就是
我们可选参数能不能
不指定默认值
注意一下
不指定默认值
你长成这个样子像什么
是不是像我们定义的这个函数
有两个形参对不对
不指定默认值
它就跟普通形参一样
那你想想看
第一个values能跑出来吗
有没有结果
肯定有结果
这不是两个形参两个实参
我们把这个100赋给$tax
把0.25赋给价格
这就跑出来结果了
问题是第二个values调用的时候
你两个形参
只传递了一个形参进去
是不是一定会报错
对
所以我们的可选参数
同样的不能不指定默认值
必须指定默认值
OK
同学们把刚才的这个例子
关于不指定默认值
和调整顺序的部分
重新的来练习一下
-PHP概述
-PHP概述--作业
-开发环境搭建
--开发环境搭建一
--开发环境搭建二
--集成环境的安装
-开发环境搭建--作业
-PHP语法入门
--语法入门一
--语法入门二
-PHP数据的输出
--数据输出
-PHP数据类型
--数据类型1
--数据类型2
--数据类型3
--数据类型4
--数据类型5
--数据类型6
-PHP常量和变量
--常量和变量1
--常量和变量2
--常量和变量3
--常量和变量4
--常量和变量5
--常量
-PHP常量和变量--作业
-PHP的运算符和表达式
--运算符和表达式1
--运算符和表达式2
--运算符和表达式3
-PHP语法基础--PHP的运算符和表达式
-条件判断语句
--条件判断语句1
--条件判断语句2
--条件判断语句3
--条件语句
-循环控制语句
--循环控制语句
--循环语句练习1
--循环语句练习2
-跳转语句和终止语句
--跳转和终止语句
-流程控制
-数组概述和分类
--数组概述和分类
--PHP数组分类
-数组创建、删除和修改
--数组创建
-数组遍历
--数组遍历1
--数组遍历2
--数组遍历3
--数组遍历4
--数组遍历5
--foreach
-数组相关函数
--数组相关函数1
--数组相关函数2
--数组相关函数3
--数组相关函数4
--数组相关函数5
--数组相关函数6
--数组函数的练习
-PHP数组--作业
-分页函数的应用
-函数的定义与调用
--函数定义与调用
-函数参数传递
--函数参数传递1
--函数参数传递2
-自定义函数总结和实验
-常用变量和数学函数
--变量和数学函数库
--数学函数实验
--数学函数
-日期和时间函数
--日期时间函数1
--时间日期函数2
--倒计时
-PHP函数--作业
-字符串概述
--字符串特点
--字符串处理方式
-常见的字符串函数
--常见字符串函数1
--输出函数1
--输出函数2
--输出函数3
--去除空白函数1
--去除空白函数2
--去除空白函数3
--其他字符串函数1
--其他字符串函数2
--字符串函数实验1
--字符串函数实验2
--字符串函数实验3
--字符串函数实验4
--字符串练习1
--字符串练习2
--字符串练习3
--字符串练习4
--字符串练习5
--字符串函数
-正则表达式
--正则表达式练习
--正则表达式
-字符串函数--作业
-文件概述和操作
--文件概述和操作1
--文件概述和操作2
-文件的上传和下载
--文件上传1
--文件上传2
--文件上传3
--文件下载
-图像基础
--图像基础1
--图像基础2
-图像基本操作
--图像基本操作1
--图像基本操作2
--图像基本操作3
--图像基本操作4
--图像基本操作5
--图像基本操作6
--表单与验证码的结合
--图像技术练习1
--图像技术练习2
--图像技术练习3
--缩略图
-PHP文件与图像技术-作业
-变色验证码
-会话表单
--会话表单概述1
--会话表单概述2
--会话表单概述3
--超全局变量1
--超全局变量2
--超全局变量3
--表单安全验证
--获取表单数据
-cookie概述
--COOKIE简介
--COOKIE
-session概述
--基本应用1
--基本应用2
-会话管理-作业
-会话管理
-MySQL和PHPMyadmin概述
--MySQL概述1
--MySQL概述2
-PHP访问MySQL
--连接服务器
--选择数据库
--浏览表内容1
--浏览表内容2
--使用mysqli扩展添加数据到数据库中
--使用mysqli扩展删除数据库中数据
--使用mysqli扩展修改数据库中数据
-MySQL扩展的使用
--添加数据页面1
--添加数据页面2
--删除页面1
--删除页面2
--删除页面3
--数据修改页面1
--数据修改页面2
--数据修改页面3