总结函数的返回值,参数
1.函数返回值,多个return只返回第一个return值
function test1(){
return 'hello world';
return "hello php";
}
echo test1();
2.布尔值true 返回1,false 无返回结果.用var_dump打印出来是false
3.浮点型数据,整型数据,字符串正常返回
function test2(){
// return '789654321';
return false;
// return '3.1415926';
}
print_r(test2());
echo "<hr>";
var_dump(test2());
echo "<hr>";
4.返回数组或对象等多行数据需要用print_r或var_dump接收.
5.输出数组要用变量接收或者在加数组下标
function test3(){
return array('1','2','3','apple','orange');
}
echo test3()['2'] ;
var_dump(test3()['2']) ;
//$name=test3();
//echo "<hr>";
//echo $name[1];
//6.参数实际就是变量.当变量在定义的函数名称后面的括号里面是形参,
//当参数在调用函数时的括号里面时是实参.
//7.形参可以赋予初始值,初始值都要放在右面,因为函数的参数调用是从左往右执行
//8.有多个参数时,调用时,要么不传参,要么全传参,不能跳过有初始值的参数传参调用
$num1=5; //变量
$num2= 8; //变量
function add($num1,$num2=9){ //()里面的参数为形参
return $num1+$num2;
}
echo add($num1); //(这里的参数为实参)
实例演绎你对课上匿名函数以及变量作用域问题的理解?
1.匿名函数:就是没有函数名称把函数赋值给变量的函数,匿名函数结束需要加分号.匿名函数的调用和函数的调用一样.
$add=function (){
return '55';
};
echo $add();
2.变量分为全局变量和局部变量
- 全局变量:定义在函数体外部的变量都是全局变量,
- 局部变量:定义在函数体内的变量都是局部变量.
$tt1='55'; //全局变量
function test4(){
$tt2="你好啊"; //局部变量
}
作用域
1.全局变量无法直接在函数体内调用,
2.局部变量也无法在函数体外调用.
3.全局变量在函数体内调用方法:global $变量 GLOBAL[‘变量’]$tt1='55'; //全局变量
function test4(){
$tt2="你好啊"; //局部变量
echo $tt1; //函数体内无法输出全局变量$tt1
echo "<br>";
echo $tt2; //正常输出
}
echo $tt2; //局部变量无法在函数体外使用输出
test4();
echo $tt2; //局部变量无法在函数体外使用输出
```
$tt1=’dasdasdasd’; //全局变量
function test4(){
// global $tt1; //使用global关键字全局变量
// echo $GLOBALS(‘$tt1’); //错误的输入方法
echo $GLOBALS[‘tt1’]; //调用函数可以输出全局变量$tt1
$tt2=”你好啊”; //局部变量
echo “<br>“;
echo $tt2; //正常输出
}
echo $tt2; //局部变量无法在函数体外使用输出
test4();
```
匿名函数的作用:
1.闭包改变上下文的值,
2.用作函数的返回值.
需要在好好揣摩下,留在作业的评论里吧.
谢谢老师!