批改状态:合格
老师批语:函数中不要用echo
在PHP中,支持函数的默认方式调用,即为参数指定一个默认值。
<?php
//自定义一个函数mun
function mun($a=1, $b=2, $c=3){
echo $a + $b;
}
mun(); //全部使用默认参数相加
echo "<hr>";
mun(8); //第一个默认参数被覆盖,后面两个参数为默认
echo "<hr>";
mun(8,5); //前两个默认参数被覆盖,后面一个参数为默认
?>点击 "运行实例" 按钮查看在线实例
<?php
//剩余参数,函数中参数设置中使用 ...变量名 方式设置的形参,称之为剩余参数,剩余参数可代表未被直接设置所有实参,且所有实参之间
//以数组的形式存储在一起,
function add ($a,$b,...$c){
return $a+$b+array_sum($c);
}
echo add(1,2,3,4,5,6,7,8,9,10)."<br>"; //1到10之和 = 55点击 "运行实例" 按钮查看在线实例
<?php
//匿名函数,即没有定义函数名的函数 即 function(){} 在PHP中也称为闭包函数
//允许临时创建一个没有指定名称的函数,被用作回调函数参数的值
// 匿名函数 不设置函数名 但可以将返回值保存在一个变量中 如 $add
$add =function ($a,$b){
return $a+$b;
}; // $add = 值 是赋值语句 所以要以分号结尾
echo $add(9,11)."<br>"; //输出20
echo "<hr>";
//匿名函数作为函数的回调参数使用
$tel = "13015600265"; //全局变量
$a = function(){ //变量赋值匿名函数 返回外部数据
return $tel; //因为没有声明或使用超全局方法调用 本次调用失败
};
$b = function()use($tel){ //匿名函数括号后 使用use(变量名)调用外部变量,函数体内返回成功
return $tel; //调用到内部的变量也拥有修改的权限
};
echo $b();
echo "<hr>";
$c = function()use($tel){ //匿名函数括号后 使用use(变量名)调用外部变量,函数体内返回成功
$tel = "13005972323";
return $tel; //调用到内部的变量也拥有修改的权限
};
echo $c(); //输出 13005972323 函数体内部修改的变量值,对于在外部变量的原值不做产生影响点击 "运行实例" 按钮查看在线实例
使用方法简单来讲,就是调用一个函数或者一个类中的某个成员函数
. 场景:
a、你要调用的函数名是未知的
b、要调用函数的参数类型及个数也是未知的,而且第二个参数传入的是数组,我不知道这样理解对不对?老师
<?php
function a($b,$c){ //第一个参数是函数名,第二个参数是参数数组
echo $b;
echo $c;
}
call_user_func_array('a',array("111","222"));
//返回是111,222
?>点击 "运行实例" 按钮查看在线实例
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号