PHP学习(四)--数据类型之间相互转换

类型转换是指将变量或值从一种数据类型转换成其他数据类型。转换的方法有两种,一种是自动转换,一种是强制转换。在PHP中可以根据变量或值的使用环境自动将其转换为最合适的数据类型,也可以根据需要强制转换为用户指定的类型。因为PHP在变量的定义中不需要或不支持明示的类型定义,变量类型是根据使用变量的上下文所决定的,所以在PHP中如果没有明确的要求类型转换,那可以使用默认的类型自动转换。

1、自动类型转换

每一个数据都有它的类型,具有相同类型的数据才能彼此操作。在PHP中,自动转换通常发生在不同数据类型的变量进行混合运算时。若参与运算量的类型不同,则先转换成同一类型,然后再进行运算。通常只有4种标量类型才使用自动类型转换。注意这并没有改变这些运算数本身的类型,改变的仅是这些运算数如何被求值。自动类型转换虽然是由系统自动完成的,但在混合运算时,自动转换要遵循转换数据长度增加的方向进行,以保证精度不降低。
这里写图片描述

2、强制类型转换

  • (int)(integer):转换成整型
  • (bool)(boolean):转换成布尔型
  • (float)(double)(real):转换成浮点型
  • (string):转换成字符串
  • (array):转换成数组
  • (object): 转换成对象

3、类型转换细节

整型转化为浮点型,由于浮点型的精度范围大于整型,所以转化后的精度不会改变。
浮点型转化为整型,将自动舍弃小数点部分,只保留整数部分。如果一个浮点数超过整形数字的有效范围,其结果是不确定的。
当字符串转化为数字时,转化后的数字是从字符串开始部分的数值型字符串,数值型字符串包括用科学计算法表示的数字。
NULL转为字符串,为空字符。

4、变量类型的测试函数

<?php
is_bool();  //判断是否为布尔型
is_int();is_integer();is_long();   //判断是否为整型
is_float();is_double();is_real();   //判断是否为浮点数
is_string();    //判断是否为字符串
is_array();     //判断是否为数组
is_object();    //判断是否为对象
is_readable();  //判断是否是资源类型
is_null();  //判断是否为空
is_scalar();    //判断是否是标量,是否为一个整数、浮点数、布尔型、字符串
is_numeric();   //判断是否是任何类型的数字或数字字符串
is_callable();  //判断是否是有效的函数名
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值