函数名称以字母或下划线开头(不能以数字开头)
1.1 有参无返回
通过方法获取名称首字
function getIndexName($str='')
{
//php代码块....
$name = mb_substr($str,0,1,'utf8');
echo $name;
}
getIndexName('李明');
1.2 有参有返回
通过方法得到数组和
function arraySum($arr)
{
$sum = array_sum($arr);
return $sum;
}
print_r(arraySum([1,2,3,4,5,6]));
1.3 无参无返回
循环获取新的数组
function newArray()
{
$arr = [];
for($i=1;$i<=10;$i++)
{
array_push($arr,$i);
}
print_r($arr);
}
newArray();
1.4 无参有返回
$a = 10;
$b = 20;
function getSum()
{
global $a,$b;
return $a+$b;
}
echo getSum();
1.5传引用
注:传引用会改变外部变量的值
function text(&$a){
$a= 'abc';
return $a;
}
$m = 123;
echo text($m);
echo $m;
1.6变量函数
注自定义函数同样适用
$a = 'abc';
echo md5($a);
$pass = 'md5';
echo $pass('abc');
1.7回调函数
function text($str){
echo $str;
}
function callBack($call,$arr){
$call($arr);
}
echo callBack('text','小明');
//系统回调函数
call_user_func('text','张三');
call_user_func_array();
1.8递归函数
function text($i){
echo $i;
$i--;
if($i>=0){
text($i);
}
}
text(5);
1.9匿名函数
$str = function ($arr){
echo $arr;
};
$str('abc');
2.0可变参数函数
function text(){
//传递参数个数
echo func_num_args();
//输出参数
echo func_get_arg(0);
//输出数组
print_r(func_get_args());
};
text('abc',123,true);