[TOC]
* * * * *
# 数据类型
## 一. 标量, 复合, 特殊
### 1. 标量 :
* boolean (布尔型)
* integer (整型)
* float (浮点型, 也称作 double)
* string (字符串)
### 2. 复合 :
* array (数组)
* object (对象)
### 3. 特殊 :
* resource (资源)
* NULL (NULL)
## 二. 注意
### 1. 浮点类型
**浮点类型不能用于比较运算中**
~~~
# eg :
$a = 0.1;
$b = 0.7;
var_dump($a+$b == 0.8);
// boolean false
# CPU在计算数据时, 转换为二进制, 浮点型会有损耗, 结果应该为0.999..., 只是无限接近0.8而已;
~~~
### 2. 布尔类型
**false 的七种情况 :**
0, 0.0, '', '0', false, array(), NULL;
(整数0, 浮点0.0, 布尔false, 空字符串'', 字符串'0', 空数组, NULL)
### 3. 超全局数组(9个)
~~~
$_GLOBALS (包含了后面的8个)
$_SESSION
$_SERVER
$_FILES
$_ENV : 环境变量,通过环境方式传递给当前脚本的变量的数组
$_REQUEST : HTTP Request 变量(默认包含了后面的3个, 尽量少用)
$_GET
$_POST
$_COOKIE
~~~
~~~
# http://www.xx.com/index.php/user/reg?a=1&b=2
$_SERVER['SERVER_ADDR'] 服务器端ip地址
$_SERVER['SERVER_NAME'] 服务器名称(域名)
$_SERVER['REQUEST_TIME'] 当前请求的时间戳
$_SERVER['QUERY_STRING'] 请求参数(有可能为空)(即:a=1&b=2)
$_SERVER['HTTP_REFERER'] 上级请求页面(直接通过网址请求时为空)
$_SERVER['HTTP_USER_AGENT'] 返回头信息中的user_agent信息(即客户端的浏览器和操作系统信息)
$_SERVER['REMOTE_ADDR'] 客户端ip地址
$_SERVER['REQUEST_URI'] (即:'/index.php')
$_SERVER['PATH_INFO'] 获取URL地址中的路径部分(即:'user/reg')
~~~
### 3. NULL
**3种情况 :**
直接赋值为NULL, 未定义的变量, unset销毁的变量