紧张的期末考试终于结束了,暑假开始了,我又重出江湖了。最近一直在巩固php的基础知识,准备陆陆续续地发到这里,做一些笔记。今天给大家准备的是php的函数知识,php中的函数和其他语言的函数有些许区别,只要稍加留意就行了。
函数的定义
函数的定义,只需要使用关键字function+函数名即可function method(){ echo "hello world!"; }
函数返回
和其他语言一样,使用return语句返回function method(){ return 10; }
函数参数的传递方式
1、值传递:这种方式只是仅仅地把值赋值到函数变量中
function method($a){ $a++; return $a; }
2、引用传递:这种方式是将变量的地址传给函数参数,如果在函数中改变变量的值将会影响到外部变量。改变函数的封装性
function method(&$a){ $a++; return $a; }
变量的作用域
全局变量:是在页面中定义的变量
局部变量:在函数中定义的变量
全局变量和局部变量的区别:
在函数内部不能使用全部变量,除非是使用global关键字申明;在全局范围内,不能使用函数中定义的变量下面是使用global关键字申明全局变量的代码说明
<?php $a = "global a"; function method(){ global $a;//申明全局变量,即此处的a就是全局变量的a echo $a;//输出global a } method();//输出global a ?>
使用全局作用域中可用的全部变量
<?php $wel = "welcome"; function method(){ echo $GLOBALS['wel']; } method();//输出welcome ?>
动态函数
<?php function good(){ echo "good mood!"; } function bad(){ echo "bad mood!"; } $mood = "good"; $mood();//调用good函数,输出good mood! ?>
参数的默认值
php函数可以给形式参数加默认值,如果某参数加了默认值,如果在调用函数的时候没有传递实参,不要错误的认为该形参就没有创建,而是给该形参赋了初值0。通俗的说,就是,你没有给我传值,我就自己赋默认值。
注意:在定义这种函数的时候,一定要把带有默认值的形式参数定义在参数列表的最右边。<?php function add($a,$b=0){ return $a+$b; } echo add(1,1);//结果:2 echo add(1);//正确,结果:1 ?>