从零开始入门PHP – P2数据类型

数据类型

PHP一共支持有8种数据类型

四种为标量类型:

integer(整型)、float/double(浮点型)、string(字符串型)、boolean(布尔型)

两种复合数据类型:

array(数组)、object(对象)

两种特殊数据类型

resource(资源)、null(空)

类型 说明
Integer(整型) 整型只包含整数,可以为正数或者负数
floadt(浮点型) 浮点型用于存储数字,和整型的区别在于它有小数位
string(字符串型) 字符串型就是连续的字符,可以为计算机所能表示的所有字符
boolean(布尔型) 这是一个比较简单的类型,也是比较常用的类型。只有两个值,一个真(true)一个假(false)
array(数组) 数组是用来保存具有同一种类型的多个数据
object(对象) 对象用来保存类的实例
resource(资源) 资源是一种特殊的变量类型,保存了到外部资源的一个引用,入打开文件、数据库连接、图形画布区域等
null(空) 没有被赋值、已经被重置或被赋值为特殊值null的变量
数据类型及说明

数据类型转换

PHP是一门弱语言(动态语言),不需要和C一样使用变量前先进行声明变量类型。PHP中,变量的类型是由赋给它的值确定的。

<?php
 $a = "Hello World";
 $b = 666;
 ?>
这上面的“=”并非数学中的“等于”,它的意思是将“=”右边的值赋予“=”左边的变量。

上述例子代码中:

变量 a 为字符串型,变量 b 为整型。

虽然PHP中不需要先声明变量的类型,但是还是会用到变量的类型转换,PHP中类型转换的方式只需要在变量的前面用括号括起来类型名称即可。

转换操作符 转换类型 举例表示
(int) 转换为整型 (int)$a
(boolean) 转换为布尔型 (boolean)$a
(string) 转换为字符串型 (string)$a
…………
在进行类型转换的过程中应该注意:转为布尔型时,null、0和未被赋值的变量或数组会被转换成false,其他则为true。转换为整型时,布尔型的false转换为0,true转换为1。浮点型的小数部分会被舍去;如果字符串以数字开头就截取到非数字位,否则输出为0。

举例理解:

<?php
$a = "123123哈哈哈";

echo $a;
echo '<br>';
echo (float)$a;
echo '<br>';
$b = "无数字的字符串";

echo $b;
echo '<br>';
echo (float)$b;

 

上方代码浏览器内显示内容为:

上方代码是将字符串类型转换为float类型做一个例子,其他也一样道理


类型转换还可以通过 settype() 函数来完成,此函数可以将指定的变量转换为指定的数据类型。

bool settype(mixed $a, string $type)

举个例子:

<?php
$num = '2.33333abc';   //给num变量赋值一个字符串2.33333abc

echo '默认输出为:'.$num;   //将变量值默认输出
//这边输出结果为默认原变量值

echo '<br>';

echo '转换为整型输出:'.(int)$num;    //将变量值转换为整型后输出
//这边输出结果为原字符串保留整数部分,输出为1
echo '<br>';
$num2 = settype($num,'integer');

echo 'Settype()转换后返回'.$num2;   //输出settype转换后的输出
echo '<br>';
//这里输出结果应该为1,因为使用settype返回的数据为布尔值,这边也就是true

echo '原始变量'.$num;   //输出原始变量
//这里输出结果应该为2,因为settype转换会使原变量发生变化

这边各位可以复制上面代码自己运行一遍就明白了


检测数据类型

PHP中内置了检测数据类型的函数,可以对不同类型的数据进行检测,如果属于某种数据返回true,否则返回false。

函数 检测类型说明 举例
is_bool 检测变量是否为布尔型 is_bool(true)
is_string 检测变量是否为字符串型 is_string('2333')
is_float 检测变量是否为浮点型 is_float(3.14)
is_interger 检测变量是否为整型 is_interger(66)
is_null 检测变量是否为null is_null(null)
is_array 检测变量是否为数组 is_array($arr)
is_object 检测变量是否为对象 is_object($obj)
is_numeric 检测变量是否为数字或数字组成的字符串 is_numeric('2')
检测数据类型举例表格

由于检测数据类型的函数功能与用法都相同,下面利用is_string()来举个例子,会用到if...else来判断和输出,if...else用法后续会讲到。

<?php
$str = '我是一个字符串123';   //声明一个变量赋值一个字符串
if (is_string($str)){     //判断该变量是否为一个字符串
    echo '是的,这个str变量是一个字符串';    //如果是输出
}else{
    echo '不,str变量他不是一个字符串';    //如果否输出
}

 上方的输出结果应该为:

是的,这个str变量是一个字符串

下一节-PHP常量

本章名称:从零开始入门PHP – P2数据类型

本章链接:https://www.9wor.com/220.html

本站名称:酒窝博客

本站地址:www.9wor.com

本站部分内容来源于网络,仅供大家参考学习,若侵犯到了您的合法权益,请点击此处联系站长处理。

本站资源均存储至云盘,若有失效请联系处理,建议成为注册用户使用我们的CDN直连下载。

为了本站的稳定发展,希望贵站若搬运本站资源,请注明一下原站地址,真的谢谢你们了!

THE END
分享
二维码
海报
从零开始入门PHP – P2数据类型
数据类型 PHP一共支持有8种数据类型 四种为标量类型: integer(整型)、float/double(浮点型)、string(字符串型)、boolean(布尔型) 两种复合数据类型:……
< <上一篇
下一篇>>