大体知识点之前过了一遍,现在回过头记录一些细节
字符串
字符串的定义方式有四种:单引号、双引号、Heredoc 和 Newdoc
注意以下:
单引号不能解析变量
单引号不能解析转义字符,只能解析单引号和反斜线本身
变量和变量、变量和字符串、字符串和字符串之间可以用 . 连接
双引号可以解析变量,变量可以使用特殊字符和{}包含
双引号可以解析所有转义字符
也可以使用 . 来连接
Heredoc类似于双引号
Newdoc类似于单引号
最主要的区别,单引号效率更高
所以
$sql = "SELECT * FROM user WHERE name = '$name'";
VS
$sql = 'SELECT * FROM user WHERE name = \''.$name.'\'';
后者更佳;
浮点类型
浮点类型不能用于比较运算当中(准确地说不能用于= 运算符)
如
输出结果为 ‘no’,因为计算机在进行运算时,会将$a 和 $b 先会被计算机的CPU转换为二进制再进行运算,而计算机在将十进制转换为二进制的时候就会有一定的损耗,$a + $b = 0.799999...
布尔类型
FALSE 的其中情况
0.0
‘’
'0'
false
array()
null
数组类型
回顾一些超全局数据
$GLOBALS - 包含后面所有的内容
$_GET
$_POST
$_REQUEST - 包含GET、POST、COOKIE;但少用,万能钥匙,欠安全
$_SESSION
$_COOKIE
$_FILES
$_ENV
$_SERVER
参数1 REMOTE_ADDR客户端信息
参数2 ‘SERVER_ADDR‘’ 服务器ip地址
参数3 ‘SERVER_NAME’ -- 服务器名称
.. . . . . . .
NULL
三种情况为NULL
直接赋值NULL;
未定义变量;
unset销毁的变量
常量
两种定义方式
坑死他const
define
记住:
const更快、是语言结构、define是函数
const 可以用于类常量,而define不可以
一些预定义常量:
__FILE__ 返回路径名称及文件名
__LINE__ 返回代码行号
__DIR__ 返回所在目录
__FUNCTION__ 返回方法名称
__CLASS__ 返回类名称
__METHOD__ 返回类名+方法名
__NAMESPACE__ 返回namespace空间名称
总结
本章主要学习定义字符串之间的一些区别,浮点类型不能用于(=)运算比较的原因,布尔类型的7种特殊情况、一些常见的预定义变量及其一些关系、NULL的三种情况、定义常量的方法及一些常见的预定义常量;
--勤记--
- END -
领取专属 10元无门槛券
私享最新 技术干货