关于php8的数据类型转换

本文详细介绍了PHP中的数据类型,包括简单数据类型(整型、浮点型、字符串、布尔)、复合数据类型(对象、数组)和特殊类型(资源、空),以及数据类型转换的自动和手动方式,以及使用var_dump(),is_*(),gettype(),settype()等函数进行类型验证的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1、数据类型介绍

1.1 简单数据类型:

1.2 复合数据类型:

1.3 特殊数据类型:

2、数据类型转换

        2.1 自动转换:

        2.2 强制(手动)转换:

3、验证数据类型途径

(1)var_dump(is_int($a)):

(2)var_dimp(is_float($a)):

(3)gettype(变量名):

(4)settype(变量名,"类型"):


1、数据类型介绍

1.1 简单数据类型:

        1.1 整形:

                int / integer,分配4个字节存储(整形超过最大内存会成为浮点型)

        1.2 浮点型:

                floar / double,分配8个字节存储(不建议用浮点型做精确判断)

                定义方法:$a = 1.23 或 $1 = 1.23e10(可以采用科学计数法)

        1.3 字符串类型:

                string,根据实际类型分配长度,表示字符串/

        1.4 布尔类型:

                bool / boolean,表示布尔类型,通常用于判断,只有两个值,true和false

                布尔类型结果使用var_dump()执行,判断数据是否为空使用empyt(),判断数据存储的变量本身是否存在isset()。

1.2 复合数据类型:

        对象类型:object,存放对象(面向对象)

        数组类型:array,存储数据(一次性)

1.3 特殊数据类型:

                资源类型:resourse,存放资源数据(PHP外部数据,如数据库、文件)

                空类型:只有NULL(不能运算)

       

2、数据类型转换

        2.1 自动转换:

                系统根据需求自主判断并自主转换(常用但效率较低)

        2.2 强制(手动)转换:

                规则:在变量之前增加一队括号(),然后在里面写上对应的数据类型。

                转换前说明:

                        布尔值:true为1,false为0

                        以字母开头的字符串,永远为0

                        以数字开头的字符串,取到字符串为止(不会同时包含两个小数点)

                转换执行:

                字符型 转化 浮点型,并计算:

<?php

$a = 'abc1.1.1';     //定义字符串a
$b = '1.1.1abc';     //定义字符串b

    
//强制(手动)转换
//字符串a转换浮点型为0
//字符串b转换浮点型为1.1

echo (float)$a + (float)$b;    //强制(手动)转换类型

                由于字符串a以字母开头,转换浮点型为0,所以正确结果为:1.1

3、验证数据类型途径

(1)var_dump(is_int($a))

判断变量a是否为Int整型,并返回布尔值:

echo "判断变量a是否为整型:";
echo var_dump(is_int($a));
echo "<hr>";

(2)var_dump(is_float($a))

判断变量a是否为float浮点型,并返回布尔值:

echo "判断变量b是否为整型:";
echo var_dump(is_int($b));
echo "<hr>";

 

(3)gettype(变量名)

获取类型,得到的该类型对应的字符串:

echo "当前变量a的数据类型转换是:";
echo gettype($a);  //直接获取结果

   

(4)settype(变量名,"类型")

设定数据类型,使用var_dump()验证其转换是否成功“:

echo "全局设定变量a的数据类型";
echo var_dump(settype($a,'int'));  //嵌套var_dump()获取转换结果
echo "<hr>";

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值