预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10
亲,该文档总共28页,到这已经超出免费预览范围,如果喜欢就直接下载吧~
如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
PHP函数函数自定义函数函数的定义:函数(function)是一段完成指定任务的已命名代码,函数可以遵照给它的一组值或参数完成任务,并且可能返回一个值。使用函数可以节省编译时间,因为无论调用多少次,函数只需被编译一次。函数的优越性:控制程序设计的复杂性提高软件的可靠性提高软件的开发效率提高软件的可维护性提高程序的重用性自定义函数语法格式:function函数名称(参数1,参数2…){程序内容叙述;return返回值;//如需函数有返回值时使用;}函数的使用:函数名称(参数1,参数2…);自定义函数的名称:它是函数在程序代码中的识别名称,函数名可以是以字母或下划线开头后跟零个或多个字母、下划线和数字的任何字符串。函数名不区分大小写。命名函数时不可使用已声明的函数,或PHP内建的函数名称。参数:所谓的参数就是用来把数值由函数外部传入函数体中,并用来加以运算处理。参数之间用“,”号隔开。当函数不需要任何数值传入时,可以省略参数。返回值:当调用函数时需要它返回一些数值,那么就要函数体中用return语句实现。格式如下:return返回值;//返回值也可以是一个表达式exit();//无返回值void实例:<?phpecho“用函数求累加:<br>";functiontest($a){$sum=0;for($i=0;$i<=$a;$i++)$sum+=$i;return$sum;}echo"50的累加是:".test(50)."<br>";echo"100的累加是:".test(100)."<br>";?>判断函数是否存在变量的范围当主程序调用函数时,PHP会暂时停止目前主要程序流程的运行,并传递必要的运算参数给目标函数使用,以执行函数的程序码片段。在函数执行结束后,函数会回传执行结果所得的数值,并将执行流程转回原本主程序中断的地方,继续执行运作。变量的能见度所谓变量的能见度,意指变量在程序中的可作用范围。当一个变量执行赋值动作后,会随着声明局部的差异,而有不同的作用范围。大致上来说变量会依据声明的局部分为下列两种:局部变量和全局变量局部变量在函数之中声明的变量就是局部变量,并且该变量只有在函数范围之中才能加以使用。如果其它程序局部需要调用使用该变量值时,必须透过「return」指令,来将其传回至主程序区块以作后续处理。<?php$A=0;functionprint_A(){$A=3;//定义局部变量echo"在函数中显示局部变量A值:$A<p>";return$A;}$B=print_A();echo"在函数外显示局部变量A值:$B<br>";echo$A;?>全局变量在函数范围之外所声明的变量就是全局变量。由于函数可以视为单独的程序片段,所以局部变量会复盖全局变量的能见度,因此在函数中并无法直接调用使用全局变量。函数中若要使用全局变量时,必须要利用global关键字定义目标变量,以告诉函数主体此变量为全局。<?php$A=“Hello!!”;//定义全局变量functionprint_A(){//定义函数print_A()global$A;//利用global关键字声明变量A为全局变量echo$A;}print_A();?>也可以使用预定义的全局变量数组$GLOBALS.这是一个特殊变量在程序运行时自动创建。echo$GLOBALS[“A”];注意事项静态变量PHP支持声明函数变量为静态的(static)。一个静态变量在所有对该函数的调用之间共享,并且仅在脚本的执行期间函数第一次被调用时被初始化。要声明函数变量为静态的用关键字static。通常,静态变量的第一次使用时赋予一个初始值。<?phpfunctionTest(){static$a=0;echo$a;$a++;}?>参数的传递在了解变量的能见度之后,接着来看看函数中的参数如何传递。所谓的参数传递,其实就是在执行函数前导入某些数值,以提供函数处理执行。PHP中传递参数的方式有:按值传递参数父程序直接传递指定的值或是变量给函数使用。由于所传递的值或变量,与函数里的数值分别储存于不同的内存区块,所以当函数对所导入的数值作了任何变动时,并不会对父程序造成直接影响。按址传递参数(用“&”符号实现)相对于按值传递模式,并不会将父程序中的指定数值或目标变量传递给函数,而是把该数值或变量的内存储存区块相对地址导入函数之中。因此当该数值在函数中有任何变动时,会连带对父程序造成影响。<?php