✦ 注释
- 单行注释 //
- 多行注释/* */
- shell风格注释 #
例子:
<?php
echo "ds adas d"; #这里是看不到的
?>
备注:单行注释中不能出现?>,会被解释器认为脚本结束。
✦ 数据类型
一、 标量数据类型
-
布尔型(bootean):保存一个true值或者false值。
$boo
备注:不只是boolean值为假,一些特殊情况非boolean值也会认为是假的,比如 0、0.0、“0”、空白字符串“”,只声明没有赋值的数组等。 -
字符串型(string)
$str
三种定义字符串的方式,单引号(’)、双引号(")和界定符(<<<).
双引号所报换的变量会自动被替换成实际数值,而单引号中包含的变量则按照普通字符串输出。
备注:在定义简单字符串,推荐单引号。因为双引号,php将花费一些时间来处理字符串的转义和变量的解析。
界定符? -
整型(integer)
$int 只能包含整数。 -
浮点型(float)
可以用来存储整数,也可以存储小数
备注:浮点型的数值是一个近似值,所以尽量避免浮点型属性之间比较大小,结果不准确。
二、 复合数据类型
- 数组(array)
数组是一组数据的结合,把一系列的数据组织起来,形成一个可操作的整体。
数组由键和值组成,分为关联数组和索引数组
$arr = [ a=>1,b=>2,c=3];
$arr = [ 1,2,3]; - 对象(object)
编程语言所应用到的方法有两种,面向过程和面向对象。
三、 特殊数据类型
- 资源(resource)
- 空值(null)
表示没有为变量设置任何值。不区分大小写。
被赋予空值有三种可能:还没有赋任何值、被赋值null、被unset()函数处理过的变量
备注:is_null()函数是用用来判断变量是否为null,该函数返回一个boolean型,如果变量为null,返回true,否则返回false。unset()函数用来销毁指定的变量。
四、 转换数据类型
在变量前添加括号括起来的类型名称即可。 例:(boolean)$num 转为布尔型备注:
- 转为布尔型的时候,null、0和未赋值的变量或数组会被转换为false,其他为true。
- 转换成整型时,布尔型的false转换为0,true转换为1,浮点型的小数部分会被舍去,字符型如果以数字开头就截取到非数字位,否则输出为0。
五、 转换数据类型
内置了检测数据类型的系列函数,可以对不同类型的数据进行检测,**判断其是否属于某个类型**,如果符合则返回true,否则返回false。- is_bool :是否为布尔类型 例:is_bool(ture)
- is_string : 是否是字符串类型
- is_float/is_double :是否为浮点类型
- is_inter/is_int :是否为整数
- is_null :是否为null
- is_array :是否为数组类型
- is_obiect :是否是一个对象类型
- is_numeric :是否为数字或由数字组成的字符串
✦ 常量
一、 声明和使用常量
常量可以理解为值不变的量。常量值被定义后,在脚本的其他任何地方都不能改变。一个常量由英文字母、下划线和数字组成,但是数字不能作为首字母出现。需使用define() 函数来定义常量。
define( string contant_name, mixed value, case_sensitive=true)
- contant_name : 必选参数,常量名称,即是标识符
- value:必选参数,常量的值
- case_sensitive:可选参数。指定是否大小写敏感,设定为true,表示不敏感
获取常量的方法:
- 使用变量名直接获取值
- 使用constant()函数,和直接使用变量名输出的效果是一样的,但函数可以动态的输出不同的常量,较为灵活
语法格式为:
mixed constant(string const_name);
参数const_name为获取常量的名称,也可以是存储常量名的变量。如果成功获取则返回常量的值,否则提示错误信息常量没有被定义。
如想判断一个常量是否已经定义,可以使用define()函数。
语法格式为:
bool dedfine(string constant_name);
参数constant_name为获取常量的名称,成功返回true,否则返回false。
二、 预定义常量
预定义常量可以获取php中的信息。注意__FILE__ 和__LINE__ 中的“__”是两条下划线,不是一条“_”
✦ PHP变量
变量是指在程序执行过程中数值可以变化的量。
一、 变量声明及使用
不需要声明,直接赋值即可。 例:<? php$name = value; ?>- 变量的赋值:赋值后两个变量互不干扰。
例子: $string1 = $string2; - 变量的引用:"&"符号为引用,这时$string2改变时,$string1的值也会相应的改变。
例子:$string1 = & $string2;
二、 变量作用域
变量必须在有限范围内使用,如果超出有效范围,变量也就失去了意义。- 局部变量:在函数的内部定义的变量,作用域是所在的函数
- 全局变量:被定义在所有函数以外的变量,作用域是整个php文件,但在用户自定义函数内部是不可用的。如果想在用户自定义函数内部使用全局变量,需要使用global关键词声明全局变量。
- 静态变量:能够在函数调用结束后仍保留变量值,当再次回到其作用域时,又可以继续使用原来的值。一般变量会在函数调用结束后,存储的数据值即被清除,所占的内存空间也被释放。使用静态变量时。先要用关键词static来声明变量,static放在要定义的变量之前。
ㄴ静态变量在很多地方都用。比如博客中用静态变量记录浏览者的人数,
✦ PHP运算符
一、 算数运算符
- + :加法运算
- - :减法运算
- * :乘法运算
- / :除法运算
- % :取余数运算
- ++ :递增运算
- - - : 递减运算
1.%是求余数,如果被除数是负数,那么取得的结果也是一个负数。
2.后两种递增/递减运算符,有两种使用方法,一种是先将变量增加/减少1,然后在赋值给原变量,成为前置递增/递减运算符;另一种是将运算符放在后面,先返回变量的当前值,然后再将变量的当前值增加或者减少1,成为后置递增/递减运算符。
二、 字符串运算符
只有一个,英文的句号"."。它的作用是将两个字符串连接起来,结合一个新的字符串。//就是把两个字符串拼在了一起。$nm = $n.$m
三、 赋值运算符
- =:赋值 $a=b
- +=:加 $a=$a + b
- -=:减 $a=$a - b
- *=:乘 $a=$a * b
- /=:除 $a=$a / b
- .=:连接字符 $a=$a.b
- %=:取余数 $a=$a % b
四、 位运算符
(???????????????????????????????????????????????????)- &
- |
- ^
- ~
- <<
- >>
五、 逻辑运算符(较重要)
- && 或者and:逻辑于(当$m和$n都为真时,结果为真)
- || 或者or:逻辑或(当$m为真,或者当$n为真时,结果为真)
- xor:逻辑异或(当$m和$n一真一假时,结果为真)
- !:逻辑非 !$n(当$n为假时,结果为真)
&&、and、||和or优先级不同
&& > || > and > or
六、 比较运算符(较重要)
- <:小于
- >:大于
- <=:小于等于
- >=:大于等于
- ==:相等
- !=:不等
- ===:恒等
- !==:非恒等
7 和8两个,不止数值上对比,类型也对比。
七、 运算符的优先顺序和结合规则
- 优先级高的操作先执行
- 同一优先级的操作从左到右的顺序进行
- 括号内的运算最先执行
因为比较难记,所以多使用括号把!!!!!!!!