abstract:程序是由变量和函数组成的。变量必须是$开始,后面跟字母或下划线isset() 判断变量是否存在访问全局变量的三种方式 1、关键字:global 变量名; 2、预定义变量:$thief=$GLOBALS['变量名']; 3、参数传参数:function 函数名($变量名) 超全局变量,其实也是全局变量,只是不需要用户定义,而是由系统事先定义好的
程序是由变量和函数组成的。
变量必须是$开始,后面跟字母或下划线
isset() 判断变量是否存在
访问全局变量的三种方式
1、关键字:global 变量名;
2、预定义变量:$thief=$GLOBALS['变量名'];
3、参数传参数:function 函数名($变量名)
超全局变量,其实也是全局变量,只是不需要用户定义,而是由系统事先定义好的,用户可以直接使用
变量类型:
1:标准:整数(interger),浮点数(float),布尔(bool),字符串(string);
2:复合:数组(array),对象(object)
3:特殊类型:NULL,资源(resource)
共3类8种
gettype()函数查看变量类型
数组:多个变量的集合,通过变量在集合中的索引来访问,索引是从0开始;
对象:即内部封装了属性和方法的抽象类型(属性相当于变量,方法相当于函数)。
作用域
1、函数可以创建一个作用域;
2、变量的访问是受到作用域的影响的;
3、php中只存在函数作用域
1、全局作用域:从脚本开始,直到脚本结束都有效;
2、函数作用域:仅在函数内有效,也叫局部作用域;
3、不受作用域影响的变量:系统预定义变量,常量。
常量:
1、常量的本质:只读变量,一旦定义,不能更新,不能删除;
2、常量的定义:函数定义(define())和关键定定义(const);
3、作用域:不受作用域的影响。在函数中不需要用global来声明一个常量;可以直接引用
函数:define('常量名','值');常量名一般为大写字母或下划线
const 常量名 = '值';
unset():销毁变量;
define和const的区别:
很多情况可以通用,用表达式的值作为常量,只能用define;
const它的常量值只允许标准变量:整数、浮点、布尔、字符串,必须是字面量。
const可以声明类常量,define不可以。
函数的分类:
1.普通函数:也叫标准函数,使用funciton在全局中声明。按名调用
2.匿名函数:将函数定义以值的方式赋给一个变量,常用做回调或闭包。匿名并非是无名,而是名称可以任意指定,非常适合用
变量来引用。
3.自调用函数:定义与执行同步完成,也不需要函数名称。
函数的参数:
1,必选参数:必须一对一
2,可选参数:必须有默认值,有默认值的参数放最后
3,无参数:用函数的方式来获取参数列表
func_get_arg() 获取参数位置
func_num_args() 获取参数数量
print_r()打印函数
回调函数:
回调函数:在一个函数中调用另一个函数;
1、支持的函数类型:普通函数,匿名函数;
2、执行回调函数:call_user_func($函数名/'匿名函数',参数1,参数2)/call_user_func_array($函数名/'匿名函数',[参数1
,参数2...]);
::范围解析符
什么情况下产生闭包
1,在函数中调用一个匿名函数时会产生闭包
2,当匿名函数当做参数传递给函数时
3,当匿名函数当做函数返回值的时候
匿名函数也有自己的作用域,除了传参,还有通过use(变量名)引用外部变量
$demo2 = function ($name) use ($belle){}
匿名函数其实就是一个普通变量:1,局部变量,2,函数的参数,3,函数返回值
匿名函数=闭包函数
1,局部变量 在函数中声明一个匿名函数
2,函数的参数 加一个callable限定参数类型,必须是一个闭包类型才可以
闭包2个生效条件:1,必须定义一个匿名函数,2,必须要执行一次匿名函数来生成闭包函数
php分支结构
1,单分支 if(){}
2,双分支
3,多分支
switch(条件)
{
case 条件1:
//语句1
break;
case 条件2:
//语句2
break;
default:
//语句
break;
}
循环结构
1,for(初始条件;循环条件;更新条件){语句} 计数循环
2,while(条件){语句} 入口判断循环
3,do{语句} while{条件} 出口判断循环
4,foreach{数组 as 键名 =>值}{语句} 遍历数组用
do{}while 和 while区别:
while先判断条件,条件满足才执行语句。
do{}while先执行语句,然后再判断条件,条件成不成立语句都至少被执行一次。
Correcting teacher:韦小宝Correction time:2018-12-10 15:02:38
Teacher's summary:写的还可以!但是下次记得要使用实际案例来使用这些语法会记忆更深刻哦!