欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

数据类型 - 尼农小道

程序员文章站 2022-05-17 21:33:54
...

数据类型

PHP中有三种数据类型:标量数据类型、复合数据类型、特殊数据类型

PHP中一种弱数据类型语言,php中的一个变量可以存储任意类型的数据。变量类型由数据来决定。

强数据类型语言:

    强数据类型语言的特点是在使用一个变量之前,必须根据变量即将存储的数据的类型来,将该变量声明为此种类型的变量。

Java示例:

定义一个变量用于存储整型数据

int v1 = 100

v1 = 'one'            //马上报错

PHP弱数据类型的语言:

    特点,变量可以存储任意数据类型。

php示例:

    定义一个变量用于存储整型数据

    $v1 = 100;

    $v1 = 'one';

 

标量数据类型

整型(int、integer)

    整型的值就是集合(...-2,-1,0,1,2,3....)中的一个值。

    整型所占字节是4个(4表示的是并不是十进制中的4位,而是二进制中32位)

整型最大的表示范围:2147483647

原理:

    (01111111111111111111111111111111)2=(2147483647)10

整型的值还可以是八进制、十六进制

八进制:以0开头,数字不能大于7

十六进制:以0x开头,数码包含0至9、A(10)、B、C、D、E、F(15)

示例:

数据类型 - 尼农小道

可以使用printf()函数用于格式化输出数据

语法:

    printf('格式字符串',数据列表)

说明:

    格式字符串中可以包含一些占位符:

    %d        十进制

    %b        二进制

    %o        八进制

    %x        十六进制

示例1:

数据类型 - 尼农小道

示例2:

数据类型 - 尼农小道

 

小数型(float)

    带有小数点的数即为小数型(也称之为精度型),PHP对于小数型又进行划分,分为单精度(float\single)与双精度(double)

float类型

double类型

类型

字节

最小值

最大值

Float

4

-3.402823466E+38

3.402823466E+38

Double

8

-1.7976931348623157E+308

1.7976931348623157E+308

 

整型        4字节(32个二进制位)         最大表示    2147483647

float        4字节(32个二进制位)            3.402823466E+38

 

IEEE组织规定(Institude Electrical Electroncity Engineer)

浮点数的约束:

0 000 0000 0 000 0000 0000 0000 0000 0000

0sign符号位    1位    0表示正数        1表示负数

000 0000 0 exponent指数位    有8位

000 0000 0000 0000 0000 0000有效数据位Mantisa 23位

 

指数位与有效数据位都是0是表示数据0,如下:

000 0000 0 000 0000 0000 0000 0000 0000

 

指数位都是1,且有效数据位都为0表示数据无穷大,如下:

111 1111 1 000 0000 0000 0000 0000 0000

 

指数位都是1,有效数据位都为非零表示数据null,如下:

111 1111 1 000 0000 0000 0000 0000 0000

 

表示的数据范围:由指数位与有效数据位共同决定

指数位:

11111110    254        还要减去127        127    

2的127次方式                十进制数=>    1.7014118346046923e+38

有效数据位:

在有效数据位之前有一个隐藏的1

000 0000 0000 0000 0000 0000

1.11111111111111111111111        十进制数=>1.99999999999(约等于2)

 

指数位乘以有效数据位:

    1.7014118346046923e+38*2    约等于3.402823466E+38

示例:

数据类型 - 尼农小道

 

boolean布尔类型:

    主要用于表示事物仅存的两个状态,对、错,真假

取值:

    true        表示成立

    false    表示不成立

布尔类型的值本身没有什么意义,主要用于流程控制。

 

字符串

    0个或多个字符的集合

字符定义方式:

方法1:

    使用单引号定义的字符串

    数据类型 - 尼农小道

方法2:使用双引号定义的字符串

数据类型 - 尼农小道

方法3:定界字符串

语法:

    $v1 =

    内容

定界符结束;

示例:

数据类型 - 尼农小道

注意:

    定界符的开始标记与结束标记要一致

    结束标记前不能有空格

    定界符就可以理解为html编辑器。

定界符可以分为两类:heredoc与nowdoc

heredoc的语法:

语法:

    $v1 =

    内容

定界符结束;

nowdoc的语法:

语法:

    $v1 =

    内容

定界符结束;

示例:

数据类型 - 尼农小道

注意:

    单引号与双引号的使用,一般如果字符串没有变量使用单引号(效率会高)。

 

复合数据类型

array(数组)

    数组主要用于存储,多个具有一定的关系数据(变量)

示例:

数据类型 - 尼农小道

object(对象)PHP高级

 

特殊数据数据类型:

resource(资源类型)

    资源类型也量一种特殊的变量,程序员不能对资源类型进行任何的操作,只能查看(var_dump),

    资源类型只能通过PHP为我们提供的特殊的函数来创建。

    资源类型主要用于表示php的扩展资源(PHP之外的数据),例如:一个数据连接,一个数据表的结果集,一个外部文本文件等。

null(空)

    null也是一种PHP中的特殊的变量,表示null,一般查看一个没定义的变量,或变量的被unset()。