php学习笔记——数据类型

一、数据类型分类与概述

1.标量类型

字符串:string

整数:integer,int

浮点数:double,float

布尔类型:boolean,bool

2. 复合类型

数组array

 对象object

3.特殊类型

空类型null

资源类型resource:表示一种外部的可供PHP使用(操作)的资源(比如图片,数据库,文件等)

二、整型integer/int

1. 四种书写形式

10进制

$n1=123;

8进制

$n1=0123 //以0开头,只能出现0-7这8个数字

16进制

 $n1=0x12A34;  //以0x开头,只出现0-9,A-F

2进制

$n1=0b1011010110 //以0b开头,只出现0和1

但是实际输出时为10进制

2.进制转换

10进制转2,8,16进制:

decbin() //10转2

decoct() //10转8

dechex()  //10转16

2,8,16转10进制:

bindec()  //2转10

octdec()  //8转10

hexdec()  //16转10

三、浮点型double/float

两种书写形式

a.常规形式

$f1=0.1;  // 或者1.23;123.0

b.科学计数法(带e)

$f2=1.23e3;  //表示1.23乘以10的3次方

$f3=123e2;  //表示一个整数(12300)

特别注意:浮点数不要随便做相等比较,因为不可靠

正确的比较方式

假设现在精确到小数点后4位,先乘以10000,然后转换为整型比较

if(round(n1*10000)==round(n2*10000))
{
echo "相等";
}

四、布尔型boolean

只有两个值true和false(不区分大小写)

在需要当做布尔值进行判断或比较的时候,以下数据会被当做布尔值的false:

false,0,0.0,"",null,‘0‘,空数组’

其余为true

五、字符串型string

可以使用单引号或双引号来表示

$v1="";  //空字符串

特别注意:双引号字符串中,如果出现“$”符号,则该符号后的连续字符(单词)会被识别为一个变量名

如果识别成功(即确实存在该变量),则会将该变量转换为实际内容

如果识别失败(即实际没有该变量),则会报错

要输出“$”字符可以加“\”

\$V1

六、数组类型array

$info1=array("张三丰","男",18); //新版本中,还可以写为$info1=array["张三丰","男",18];

$info2=array('name'=>"张三丰",'age'=>18,'gender'=>"男");

数组的复制:

形式为$数组变量[下标]

echo $info1[0];

print_r($info2['name']);

标签定义及使用说明

 标签可定义预格式化的文本。

被包围在

 标签 元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体。

此例演示如何使用 pre 标签
对空行和 空格
进行控制

七、空类型null

只有一个值:null 不区分大小写

isset()判断结果为false

八、类型判断

gettype() //获取一个变量的类型,结果为一个变量类型的名称(字符串)

integer

string

double

settype() //设置一个变量类型

settype($v1,'string');

var_dump();  //输出变量的完整信息:类型,长度(如果需要),内容 

判断是否为某种类型

is_int()/is_integer()

is_float

is_bool()

is_string()

is_array()

is_numeric()  //判断是否为“数字”类型

is_object

两个特殊判断

isset() //判断变量是否存在,如果有数据,则返回true ,否则为false

empty()  //判断是否为空的,如果确实为空的,则返回true ,否则为false

空的,可以理解为empty:0,0.0,"","0",false,array()

而空(null)表示完全不存在,为真空

九、类型转换

自动转换

$v1=1+"3";  //结果是4。

$v2="1"+"3";  //结果为4。只要加减乘除都是转为数字。

$v3=1.2+"2.2abc"  //结果为3.4。一个字符串当做数字,就会将字符串的最前面的数字转换为数字值,如果没有就为0

$v4=1.2+"abc2.2"  // 结果为1.2。

$v5=1 . "4";  //结果是14。字符串之间使用 “点” 来连接,也就是英文中的半角句号 " . "

强制转换

$v1=(int)"1";

$v2=(float)"1.23"

$v3=(string)$v1;

 

 

 

 

 

 

 

 

你可能感兴趣的:(WEB前端,PHP相关)