第三堂,php函数
函数分为系统内部函数和用户自定义函数两种。 函数就是把日常中经常使用的一段代码或一个功能写成一个函数。在需要时进行调用,调用函数的目的是为了简化编程的负担,减少代码量和提高效率,达到增加代码重用性,避免重复开发的目的。
1.定义和调用函数,还有如何在函数间传递值。
函数就是将一些重复使用到的功能写成一个独立的代码块,在需要的时候单独调用。
function  foo  
  ($arg_1, $arg_2, ..., $arg_n){
 关键字   函数名字   参数    参数
参数
echo "Example function.\n";  这个为自定义函数主体
   
return $retval;
}
在调用函数时需要向函数传递参数,被传入的参数称为实参,而函数定义的参数为形参。参数传递的方式有,按值传递,按引用传递,和默认参数3种。
1.按值传递是指将实参的值复制到对应的形参中,在函数内部的操作针对形参进行。操作的结果不会影响到实参,即函数返回后,实参的值不会改变。也就是说实参的值不会因为函数的改变,而改变,但是函数输出的值是按传入的参数而改变了的。
2.按引用传递方式就是将实参的内存地址传递到形参中,这时在函数内部的所有操作都会影响到实参的值,返回后实参的值会发生变化,引用传递方式就是传值时在原基础上加&号即可。
3.默认参数,默认参数及可选参数,可以指定某个参数为可选参数,将可选参数放在参数列表末尾,并且指定其默认值为空。默认参数必须放在非默认参数的右侧,否则函数可能出错,,默认值也可通过引用传递。
2.函数返回值
 1.函数的返回值,通常,函数将返回值传递给调用者的方式是使用关键字return
return()将函数的值返回给函数的调用者,即将程序控制权返回到调用者的作用域,如果在全局作用域内使用return()关键字,哪么将终止脚本的执行。
return语句只能返回一个参数,也即只能返回一个值,不能一次返回多个,如果要返回多个结果,就要在函数中定义一个数组,将返回值存储在数组中返回。
  2.变量函数
 
 
函数的调用是通过改变变量名来实现的,通过在变量名后面加上一对小括号,php将自动寻找与变量名相同的函数,并且执行它,如找不到就报错。
例如:function go(){
echo go;
}
function come(){
echo come;
}
$fun="go";
$fun();
$fun="come";
$fun();
  3.对函数的引用
按引用传递参数可以修改实参的内容。引用不仅可用于普通变量,函数参数,也可用于函数本身,对函数的引用,就是对函数返回结果的引用。引用函数就是对定义函数时,在函数名前加上&符,接着通过变量$str引用该函数,最后输出变量$str.
例,function &example($tmp=0){
return $tmp;
}
    $str = &example("看到了");
    echo $str."<p>";
   4.取消引用
当不需要引用时,可以取消引用,取消引用使用unset()函数,它只是断开了变量名和变量内容之间的绑定,而不是销毁变量内容。
php变量函数库
 常用的:
isset()函数检查变量是否被设置,即是否被赋值。
设置则返回TRUE,否则返回false。isset() 只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined() 函数。
empty()函数检查一个变量是否为空,为空返回TRUE,否则返回FALSE
gettype()函数获取变量的类型。
var_dump 打印变量的相关信息。
  常用的字符串函数库
explode 分隔字符串
 
  日期时间函数库
checkdate 验证日期有效性
mktime 用于返回一个日期的unix时间戳
  数学函数库
floor实现舍去法取整
fmod返回除法的浮点余数。
  文件系统函数库
fopen()用于打开某文件,并返回该文件的标识指针,该文件可是本地也可是远程。
mkdir新建目录
  
  mysql函数库
每种函数数都有很多,这里只写了几个举例而已。
复习这一节内容:
 1.定义和调用函数
 2.函数间传递参数,按值传递,引用,默认
 3.从函数中返回值,return
 4.变量函数
 5.对函数的引用
 6.取消引用
 7.php变量函数库,常用的,字符串,日期时间,数学,文件系统,mysql函数库