第一章:PHP基础语法
一.常量:
1.1.define()函数:define(‘R’,’5’,’true’); //R:常量名,5:常量值,true:常量名对大小写不敏感,为false时表示对常量名敏感。
1.2 const关键字:const关键字在定义常量时,只需要在后面跟上一个常量名称。
并且使用“=”赋值。Const R=6;
phpinfo();
//phpinfo是一个函数(功能),这个函数(功能)会显示一个当前电脑(服务器)的详细的PHP信息
二.变量:
变量的几个特点:
1.x = 5 将右边值5,赋值给左边的x
2.第二段x = 12,最后x + y 的结果等于20,说明x在从上到下的运算(执行)中,可以被重新赋值。
我们在PHP中的变量也是如此。不过有几个特点:
1.必须要以$开始。如变量x必须要写成$x
2.变量的首字母不能以数字开始
3.变量的名字区分大小写
4.变量不要用特殊符号、中文,_不算特殊符号
5.变量命名要有意义(别写xxx,aaa,ccc这种 变量名)
错误举列:
错误:变量以数字开始
<?php
$123 = 345;
?>
错误:变量中有特殊字符,中文
<?php
//$a*d = 345;
//$中国 = 123;
?>
错误:变量命名没有意义aaa容易数错,也没有含意
<?php
$aaaaaaa = 345;
?>
错误:变量严格区分大小写 $dog 和 $Dog是PHP学院的变量,尝试将$dog的值改为8.结果D写成了大写。
<?php
$dog = 5;
//重新修改$dog的值,将$dog改为8
$Dog = 8;
?>
正确举例:
正确:变量不能以数字开始,但是数字可以夹在变量名中间和结尾
<?php
$iphone6 = 5880;
$iphone6plus = 6088;
?>
正确:变量不能有特殊符号,但是_(下划线不算特殊符号)
<?php
$_cup = 123;
?>
注:你会发现代码是从上向下执行的。
$ 叫作美元符,英文单词:dollar。PHP的变量必须以美元符开始。说明搞PHP有“钱”途。
dollar
读音:[\'dɒlə(r)]
解释:美元
三、PHP数据类型-------字符串:
在PHP语言中声明字符串有三种方式:
1.用单引号声明(用英文半脚的单引号,将字符串包起来)
2.用双引号声明(在字符串两边加双引号。)
3.用字界符声明(需要输入非常大段的字符串时使用)
字界符声明
1).在变量后面的等号写三个小于号(<<<)。
2).然后在<<<后面写上字符(建议英文大写字符)。如下例中的:ABC
3).然后换行写上任意想写的字符
4).写完后,顶行。在行最开始处,再写上<<<后面的字符和分号。如下例中的:ABC;
<?php
$dingjie = <<<ABC
那双引号和单引号有什么区别呢?
【重要知识点】PHP面试题中,高概率面试题(建议背诵并实验三遍以上)
1.双引号解析变量,但是单引号不解析变量。
2.在双引号里面插入变量,变量后面如果有英文或中文字符,它会把这个字符和变量拼接起来,视为一整个变量。一定要在变量后面接上特殊字符,例如空格等分开。
3.如果在双引号里面插变量的时候,后面不想有空格,可以拿大括号将变量包起来。
4.双引号解析转义字符,单引号不解析转义字符。但,单引号能解析\\' 和\ (双引号中最常用的:\n 回车 \t 缩进)
5.单引号效率高于双引号,尽可能使用单引号
转义字符反斜线的使用(\)
6.双号和单引号可以互插!!!双引号当中插入单引号,单引号当中插入变量,这个变量会被解析。
7.神奇的字符串拼接胶水——(.)点,用来拼接字符串。
8.我们将定界符声明字符串视为双引号一样的功能来看待。
单引号插入变量:
双引号插入变量:
四、 php数据类型之浮点型
Var_dump()是一个函数,向括号()中间插入变量,这个函数,会打印出来数据类型
还会对应显示变量的长度和值。
五. php流程控制之if else语法
四种基本语法:
五.1&五.2
<?php
if(布尔条件)
布尔值为真(true)时执行,只能写一行代码;
?>
<?php
if(布尔条件)
布尔值为真(true)时执行,只能写一行代码;
else
布尔值为假(false)时执行,只能写一行代码;
?>
五.3&五.4
<?php
if(布尔条件){
布尔值为真(true)时执行,可写多行代码;
}
?>
<?php
if(布尔条件){
布尔值为真(true)时执行,可写多行代码;
}else{
布尔值为假(false)时执行,可写多行代码;
}
?>
六.PHP数据类型之NULL类型、
六.1产生NULL类型的三种情况:
*通过变量赋值明确指定为变量的值为NULL
*一个变量没有给任何值
*使用函数unset()将变量销毁
六.2empty()函数和isset()函数的区别:
empty()函数可以向括号中间传入一个变量。这个变量的值如果是false或者为null,则返回true
Isset()可以向括号中间传入一个或多个变量,变量与变量间用逗号分开。只要有一个
变量为null,则返回false,否则返回true。
Unset()函数的功能是毁掉变量。Unset(变量)括号中间插入想要毁掉的变量名,
这个变量就会被毁掉!
七.PHP数据类型之数组:
<?php
//定义$shu这个变量
//数组声明是向array里面插入一个或者多个值
//一个或者多个值用逗号分开
$shu = array(1,2,3);
?>
八.PHP数据类型之查看和判断数据类型
八.1查看数据类型
1.gettype(传入一个变量)能够获得变量的类型
2.var_dump(传入一个变量)能够输出一个变量的类型
八.2判断数据类型
is_int//是否为整型
is_bool//是否为布尔
is_float//是否为浮点
is_string//是否为字符串
is_array//是否为数组
is_object//是否为对象
is_null//是否为空
is_resource//是否为资源
is_scalar//是否为标量
is_numberic//是否为数值类型
is_callable//是否为函数
九.PHP数据类型之自动转换和强制转换
九.1布尔值的自动类型转换
条件:
- 整型的0为假,其他整型值全为真
- 浮点的0.0,布尔值的假,小数点后只要有一个非零的数值即为真
- 空字符串为假,只要里面有一个空格都算真
- 字符串的0,也将其看作是假,其他的都为真。
- 空数组也将其视为假,只要里面有一个值。就为真
- 空也为假
- 未声明成功的资源也为假
总结:
布尔值的true参与运算是会变成整型或是浮点的1,布尔值的false参与运算是会变成整型或者浮点的0。
字符串开始处是整型或浮点类型的字符,会转成对应的类型参与运算。
九.2强制类型转换的三种方式:
- 用后面的三个函数可以完成类型转换,intval()、floatval()、strval()、
2.变量前加上()里面写上类型,将它转换后赋值给其他变量
3.Settype(变量,类型)直接改变量本身(settype中第二个参数是要转换的数据类型,要用放在单引号里作为字符串类型)
九.3强制类型转换时的特点:
- 空转为整型会为整型的0
2.空转为浮点会为浮点的0
3.空转为字符串会为空字符串‘’
4.浮点的123.0转为字符串会为字符串123
5.浮点的123.2转为字符串会为字符串的123.2
6.浮点即使小数点再大,它都会被干掉,会舍掉小数点后面的值
7.如果字符串转为整型的时候,如果数值在前面,会将前面的数值拿出来做为整型的转换值。
8.settype(变量,\'null\'); 等价于 unset()一个变量
9.$目标变量 = (类型)$操作变量 只会改变目标变量的类型,不会改变原变量的类型,Settype是改变原值