自定义函数是一部分可重复执行的代码段,一次编译可多次执行,
具有以下特点:
1、减少程序运行的复杂性;
2、提高程序的可靠性;
3、提高软件的开发效率;
4、提高程序的维护性;
5、提高程序的重复性。
function函数语法:
function 函数名(参数1,参数2,……){
具体代码段……
return 返回值;
}//函数名可以使用英文字母、数字、下划线来命名,函数可以接收参数,也可以不用接收参数,具体情况由编写程序的要求来定。
函数的调用方法:
函数名(参数1,参数2,……);//通过在需要调用定义好的函数的地方放上函数名加上要传递的参数,这样就完成了对函数的调用。
函数的定义与调用:
function myfunction($name){
echo $name."<br />";
}
myfunction('我的function函数输出测试!');
myfunction('PHP函数function的体验!');
体现出一次编译,多次调用的效果。
注意:函数是一个独立的代码块,通过函数的定义语句把能完成某功能的代码段单独封装在一独立的语句块里,它不受上下脚本程序的影响与控制,我们可以对它进行单独封装存放单独的编写。
myfunction('我的function函数输出测试!'); //可以把调用函数放到定义函数的前面,因为函数它不受脚本程序的影响,所以调用函数时就可以放在任何地方,但该函数必须定义,否则就会出错,如果不确定该函数是否定义可以通过系统函数function_exists(函数名);来判断该函数是否已经定义。
function myfunction($name){
echo $name."<br />";
}
function_exists(myfunction);//判断函数myfunction是否存在。
<?php
//三个参数 传递三个参数读取
function usister($name,$age,$city){
echo "你妹的姓名:".$name."<br />你妹的年龄:".$age."<br />你妹的居所:".$city."<br />";
}
echo usister("小薇",26,"北京");
//三个参数 传递二个参数读取
function usister1($name,$age,$city){
echo "你妹的姓名:".$name."<br />你妹的年龄:".$age."<br />你妹的居所:".$city."<br />";
}
echo usister1("小莉",24);
//三个参数一个默认值 我们不传值、传值测试
function usister2($name,$age,$city='上海'){
echo "你妹的姓名:".$name."<br />你妹的年龄:".$age."<br />你妹的居所:".$city."<br />";
}
echo usister2("小莉",24);
echo usister2("小莉",24,"深圳");
//三个参数一个默认值 我们不传值、传值测试
function usister3($name,$age=25,$city){
echo "你妹的姓名:".$name."<br />你妹的年龄:".$age."<br />你妹的居所:".$city."<br />";
}
echo usister3("小莉",24,"深圳");
echo usister3("小莉","深圳");
?>
在调用函数时给函数进行传递参数时,如果想要某个段在前台用户不想填写参数时后台程序就自动填写默认值(如:上面函数的参数:$city='上海' 这里是后台判断前台用户不给参数时自动填写的默认值)时,这个默认的参数应写在所有参数的后面:usister2($name,$age,$city='上海')这样书写是正确的其他书写如:usister3($name,$age=25,$city)这样是错误的。
函数的执行过程:程序从上往下执行,当碰到有调用函数的函数名时就以该函数名去寻找该函数并执行该函数里的代码,然后再去执行该函数调用地方下面的代码。