【自定函数的基本语法结构】
//参数列表,用处是接受数据.
function 函数名(参数列表){
//函数体;(完成某一个功能的指令集合,这个必须有)
//return 语句; (return 语句主要的用处是返回一个结果,这个可以没有)
}
【require[_once]和include[_once]调用的区别】
【require 和require_once 区别】
这两个区别为,前者遇到即包含文件,后者会判断是否已经包含过了,如果包含过了,则不再包含文件。一可以节省资源,二可以避免重复定义的错误。
一个PHP文件中不能有两个相同的函数,如果有会报错:can not redeclare…
redeclare: 再次声明.
【include 和 require 区别】
include 如果出现了错误,会继续执行,require 出现错误,则会终止程序.
做项目的时候,基本上使用的 require_once.(requir_once / require 应当放在 php 最前面)
【函数的深入使用讨论】
函数的基本结构
function 函数名(参数列表){
//函数体;
//return 语句;
}
① 参数列表可以是多个参数
② 参数可以多个,同时,其数据类型可以是php语言支持的任意类型
③ 函数名开头的字母,以_ 或者 A-Z 或者 a-z ,不要用数字或者特殊字符开头
④ 函数名不区分大小写 ,这个与变量不一样(变量名区分大小写)
function Abc(){} 和 function abc(){} 是同一个函数.
⑤ 一个自定义函数中的变量是局部的,函数外不生效
案例:
备注:在php中有三种提示 notice : 注意 waring: 警告 error : 错误
⑥ 使用global全局变量的时候,可使用在函数外的变量
$ab=12;
function abc4(){
global $ab; //我要在abc3中使用到外层 $a;
$ab+=45;
}
abc4();
echo $ab;
⑦ 如果在函数中,我们不希望使用某个变量,或者是希望彻底的不再使用某个变量,则可以用 unset(变量名),将该变量彻底删除.
$a7=12;
unset($a7); //删除该变量,即:该变量不再存在,下面会报错。
$a7+=45;
echo $a7;
⑧ 在php函数中,我们可以给某些参数,赋一个默认的值.
function ccc($y,$x=2){
$res=$x+$y;
return $res;
}
$w=70;
echo ccc($w).'--'; //70+2
echo ccc($w,90).'--'; //70+90
$v=70;
echo ccc($w,$v); //70+70
⑨ php传递变量的时候,默认是值传递,如果需要引用(地址)传递,可以使用 &变量名;
$p=213;
function ddd(&$q){ //不加&符号的时候,输出为213,加上后输出为314
$q=314;
}
ddd($p);
echo $p;
1.PHP中函数的参数:除了对象类型外,其他类型的参数传递方式都是值传递
2.引用传递:
3.使用关键字global或者 $GLOBALS[] 数组可以手动指定一个函数中使用的变量为全局变量。
4.使用empty()函数检测变量时,在””、0、”0”、NULL、FALSE、array()、等情况下都被认为是空的。
5.is_bool()函数用来检测某变量是否为布尔型,is_string()检测是否为字符串,is_float()检测是否为浮点数
6.使用checkdate()函数检查日期的格式是否有效。
7.包含文件:require()和include()的区别:当包含文件失败时,require()函数会抛出一个致命错误并终止程序,而include()函数只会抛出警告信息并继续执行程序。
【代码】https://github.com/rxbook/study-php-object/tree/master/code01