最新消息:

我的php学习第二十五天——PHP的数据类型

PHP zhongweiziliudi 58浏览 0评论

PHP有8大数据类型,分为三个大类

标量数据类型(简单数据类型)

整型:int或者integer

浮点型:float或者double

布尔型:bool或者Boolean

字符型:string

复合数据类型

数组:array

对象:object

特殊数据类型

资源:resource

空:NULL

为什么会有数据类型?

对于电脑来说,根本没有数据类型,只有二进制。

是因为人有需求,需要对数据进行分门别类,所以才定义了这么些数据类型。

PHP是一门弱类型的语言。

强类型:在给变量赋值之前,需要对变量的类型进行声明,而且给变量的值必须是指定类型的数据

Int num;

Num = 10;

//num = ‘abcd’;//系统会报错,提示数据类型不符合

弱类型:变量分为两个部分,一部分是变量名,变量值,变量名是不区分数据类型的,值是有类型

$a = 10; //10是整型,但是a变量本身没有数据类型。

整型:int,指的是在一定范围内的整数。

PHP_INT_MAX 代表整型的最大值。

我的php学习第二十五天——PHP的数据类型

如何判断一个变量到底是什么类型?var_dump(变量)

我的php学习第二十五天——PHP的数据类型

PHP还支持其他进入:八进制和十六进制

八进制:逢十进一,假设一个十进制的数值为17,21

PHP默认都是认为是十进制,除非碰到以0开始,而且在输出的时候会将其他类型进制转化成十进制输出。

$oct = 021;

我的php学习第二十五天——PHP的数据类型

如何让系统在输出的时候保留原来的进制输出?printf(‘%o’,$a);

我的php学习第二十五天——PHP的数据类型

十六进制:逢16进1

1,2,3,4,5,6,7,8,9,a,b,c,d,e,f———10,11…1f——–20,21….

$hex = 0x15; //21

我的php学习第二十五天——PHP的数据类型

1.进制转换

十进制转八进制

我的php学习第二十五天——PHP的数据类型

十进制转十六进制

我的php学习第二十五天——PHP的数据类型

十六进制转十进制(其他进制转十进制都可以采用同样的方式)

我的php学习第二十五天——PHP的数据类型

PHP为用户提供了进制转换的函数

Hexdec():十六进制转十进制

Dechex():十进制转十六进制

Bindec():二进制转十进制

Decbin():十进制转二进制

Octdec():八进制转十进制

Decoct():十进制转八进制

浮点型:float

强类型语言里

Float:4个字节,单精度

Double:8个字节,双精度

单精度和双精度表示能够精确的位数不一样,单精度的精确长度7位,双精度大概是16位左右

单精度值:1234567890 ———-》1234570000

在PHP中

Float=double=8个字节

PHP中浮点数能够保存的最大值:1.8 * 10^302

我的php学习第二十五天——PHP的数据类型

我的php学习第二十五天——PHP的数据类型

因为浮点数会丢失精度,所以有可能导致看到的浮点数跟实际存储的浮点数一样,因此不采用浮点数进行比较

我的php学习第二十五天——PHP的数据类型

时间戳是一类整型

我的php学习第二十五天——PHP的数据类型

布尔类型

正常的,布尔类型有两个值:TRUE和FALSE

在PHP中,只要非0,都为TRUE

我的php学习第二十五天——PHP的数据类型

在PHP中,有哪些会被认为是FALSE呢?

以下部分都是FALSE,这部分FALSE不能用来输出或者var_dump判断,属于不同的数据类型,需要通过if进行判断,从而得出其正确的布尔结果

FALSE

0

0.0

’’

’0’

空数组

null值

字符类型

由字符组成的数据类型就是字符类型。

定义方式有多种

$str1 = ‘abcd’;

我的php学习第二十五天——PHP的数据类型

$str2 = “abcd”;

我的php学习第二十五天——PHP的数据类型

单引号和双引号有什么区别?

双引号号中会对符合条件的变量进行解析,得到其结果;单引号会直接原样输出所有字符。

在双引号中,能够解析更多的转义字符

我的php学习第二十五天——PHP的数据类型

我的php学习第二十五天——PHP的数据类型

单引号里只能识别\’对于单引号的转义

双引号里不能识别\’对单引号的转义,双引号\”,\r\n\t都可以识别

注意:转义字符\不能放倒字符串的最后,因为放到最后会对最后的引号(不论单双)都会进行转义。

字符串定义方式:定界符

语法:$string = <<<STR

字符串内容

STR;

我的php学习第二十五天——PHP的数据类型

使用双引号也可以实现js的输出

我的php学习第二十五天——PHP的数据类型

说明双引号跟定界符方式没有什么明显的区别

定界符也可以输出变量

我的php学习第二十五天——PHP的数据类型

注意:使用定界符输出字符串能够保留其原有的格式。

什么时候使用定界符,什么时候使用双引号?

他们之间没有什么区别。通常,当字符串非常长而且复杂的时候,尽可能的使用定界符,因为其格式非常明确,便于识别。如果字符串很短的话,那么就建议使用双引号。

什么时候使用双引号,什么时候使用单引号?

有这么一种认为:单引号的效率比双引号效率高。如果输出的字符串不需要解析变量和一些转义字符,那么尽量使用单引号,其他情况下使用双引号或者定界符。

定界符需要注意以下几点

定界符的第一行 <<< STR之后不能有任何内容,连空格都不行

使用定界符,注释不能卸载定界符内容里面

最后部分STR要独占一行

最后部分STR必须要顶格,如果出现了这种错误,很难找出来

在双引号或者定界符中解析变量注意事项

保证变量名与后面的其他字符串之间没有联系(可以通过空格来进行区分)

使用{}对变量进行包含,显示的告诉编译器大括号里面的是一个变量

提示浏览器使用指定编码解析html文件

我的php学习第二十五天——PHP的数据类型

2.PHP代码执行过程

PHP是以中脚本语言, 也是一种解释型语言

Index.c

Index.java ====》 index.class ==è执行index.class文件

前面两种都需要先进行编译,产生一个执行文件

Index.php ======》解释

我的php学习第二十五天——PHP的数据类型

转载请注明:PHP学习 » 我的php学习第二十五天——PHP的数据类型

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址