PHP基础——数据类型

数据类型:data type,在PHP中指的是存储的数据本身的类型,而不是变量的类型,PHP是一种弱类型语言,变量本省没有数据类型

PHP的八种数据类型

在PHP中将数据分为三大类八小类

简单(基本)数据类型:4个小类

整形:int/integer,系统分配4个字节存储,表示数据类型(有前提)

浮点型:float/double,系统分配8个字节存储,表示小数或者整形存不下的整数

字符串型:string,系统根据实际长度分配,表示字符串(引号)

布尔类型:bool/boolean,表示布尔类型,只有两个值:ture 和 false

复合数据类型:2个小类

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

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

特殊数据类型:2个小类

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

空类型:NULL,只有一个值就是NULL(不能运算)

类型转换

类型转换:在很多的条件下,需要指定的数据类型,需要外部数据(当前PHP取得的数据),

转换成目标数据类型

在PHP中有两种类型转换方式

  1. 自动转换:系统根据需求自己判定,自己转换(用的比较多,效率低)
  2. 强制(手动)转换:认为根据需要的目标类型转换

强制转换规则:在变量之前增加一个括号(),然后在里面写上对应类型:int/integer......

其中NULL类型用到nuset()

在转换过程中,用的比较多的就是转布尔类型(判断)和转数值类型(算术运算)

其他类型转布尔类型:ture 或者 false,在PHP中比较少类型转变成 false

参照:PHP手册   http://doc.php.sh/zh/  

其他类型转数值的说明:

  1. 布尔ture为1,false 为 0
  2. 字符串转数值有自己的规则 

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

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

<?php
    //数据类型

    //创建数据
    $a='abc1.1.1'; 
    $b='1.1.1abc';
    
    //自动转换
    echo $a+$b;

    //强制转换
    echo'<br>',(float)$a,(float)$b;

?>

类型判断

通过一组类型判断函数,来判断变量,最终返回这个变量所保存数据的数据类型(相同结果为ture  ,失败为 false):是一组以is_开头后面跟类型名字的函数:is_xxx(变量名)

Bool类型不能用echo来查看,可以使用 var dump 结构查看

Var dump(变量1,变量2) 

<?php
     //数据类型
     $a = 10; //整型     
     $b = 10.5; //浮点型
     $c = "Hello World"; //字符串
     $d = true; //布尔值
     $e = array(1, 2, 3, 4, 5); //数组
     $f = null; //空值
     //输出数据类型
     echo gettype($a);
     echo "<br>";
     echo gettype($b);
     echo "<br>";
     echo gettype($c);
     echo "<br>";
     echo gettype($d);
     echo "<br>";
     echo gettype($e);
     echo "<br>";
     //判断数据类型
     echo'<hr>';
     var_dump(is_int($a));       //判断是否为整型
     var_dump(is_float($b));      //判断是否为浮点型
?>

还有一组函数可以用来获取以及设定数据(变量)的类型

Gettype(变量名):获取类型,得到的是该类型对应的字符串

Settype(变量名,类型):设定数据类型,与强制转换不同

  1. 强制转换(类型)变量名,是对数据值复制的内容进行处理(不会处理世纪存储的内容)
  2. settype会直接改变数据本省

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值