PHP基本数据类型有哪些?

2021年1月26日15:58:39
评论
6261

在计算机的世界里,数据是计算机操作的对象。每一个数据都有其类型,具备相同类型的数据才可以进行运算操作。虽然PHP是弱类型语言,但是在某些特定的场合,仍然需要正确的类型。

PHP基本数据类型有哪些?

PHP的数据类型可以分成3种,即基本数据类型、复合数据类型和特殊数据类型。下面我们一起看看PHP基本数据类型有哪些吧。

基本数据类型是数据结构中最基本的单元,只能存储一个数据。PHP中基本数据类型包括4种,下面对各个数据类型进行详细介绍。

一、布尔型(boolean)

布尔型是PHP中较为常用的数据类型之一。它保存一个真值true或者假值false。设定一个布尔型的变量,只需将true或者false赋值给变量即可。

【例】布尔型变量通常都是应用在条件或循环语句的表达式中。下面在if条件语句中判断变量$b的值是否为true,如果为true,则输出“我们要努力学好PHP”,否则输出“出错!”。
本程序关键代码如下。

<?php
    $b = true; //定义布尔型变量
    if($b == true) //使用if条件语句判断变量值是否为真
        echo "<font color='blue'>我们要努力学好PHP,www.phpddt.com</font>";
    else
       echo "出错!";
?>

运行结果:我们要努力学好PHP,www.phpddt.com

说明:

(1)在PHP中,不是只有false值才为假的。在一些特殊情况下,如0、0.0、“0”、空白字符串( " " )、只声明没有赋值的数组等,它们的布尔值也被认为是false。

(2)$b是定义的变量名称。PHP中的变量名称用$和标识符表示。关于变量的详细介绍,请参考3.2节。

二、字符串型(string)

字符串是连续的字符序列,由数字、字母和符号组成。字符串中的每个字符只占用一字节。在PHP中,定义字符串有以下3种方式。

• 单引号(');
• 双引号(");
• 定界符(<<<)。

单引号和双引号是经常被使用的定义方式,定义格式如下。

$a ='string1';
或
$a ="string2";

如果在单引号和双引号定义的字符串中包含变量名,那么它们的输出结果是完全不同的。双引号中所包含的变量名会自动被替换成变量的值,而单引号中包含的变量名则按普通字符串输出。

【例】分别应用单引号和双引号输出同一个变量,其输出的结果完全不同,双引号输出的是变量的值,而单引号输出的是字符串“$a”。本实例关键代码如下。

<?php
    $a = "你好,欢迎来到PHP的世界!";
    echo "<h3>$a</h3>"; //用双引号输出
    echo '<h4>$a</h4>'; //用单引号输出
?>

运行结果:你好,欢迎来到PHP的世界!

说明:在定义简单的字符串时,使用单引号是更加合适的处理方式。如果使用双引号,PHP将花费一些时间来处理字符串的转义和变量的解析。因此,在定义字符串时,如果没有特别的要求,建议尽量使用单引号。

定界符(<<<)是从PHP 4.0开始支持的。定界符用于定义格式化的大文本。格式化是指文本中的格式将被保留,所以文本中不需要使用转义字符。在使用时后接一个标识符,然后是格式化文本(字符串),最后是同样的标识符结束字符串。定界符格式如下。

<<<str
格式化文本
str

其中,符号“<<<”是关键字,必须使用;str为用户自定义的标识符,用于定义文本的起始标识符和结束标识符,前后的标识符名称必须完全相同。

结束标识符必须从行的第一列开始。也必须遵循PHP中其他任何标签的命名规则:只能包含字母、数字、下划线,而且必须以下划线或非数字字符开始。

【例】应用定界符定义字符串并输出。可以看到,它和双引号没什么区别,字符串中包含的变量也被替换成实际变量的值。代码如下。

<?php
 $i = "PHP";
 echo <<<std //使用定界符

  Hello ,welcome to here!<p>
  Do you like $i?
  std; //定界符结束标志
?>

运行结果:

Hello ,welcome to here!

Do you like $i?

注意:结束标识符必须单独另起一行,并且不允许有空格。如果在标识符前后有其他符号或字符,则会发生错误。

三、整型(integer)

整型数据类型只能包含整数。在32位的操作系统中,有效的范围是-2 147 483 648~+2 147 483 647。整型数可以用十进制、八进制和十六进制来表示。如果用八进制,数字前面必须加0;如果用十六进制,则需要加0x。

【例】在下面的实例中,分别输出定义的十进制、八进制和十六进制变量的结果。本实例完整代码如下。

<?php
/*
八进制、十进制和十六进制是相对于整型数据来说的,在
实际应用中并不十分广泛
*/
$str1 = 123; //十进制变量
$str2 = 0123; //八进制变量
$str3 = 0x123; //十六进制变量
echo "数字123不同进制的输出结果:<p>";
echo "十进制的结果是:$str1<br>";
echo "八进制的结果是:$str2<br>";
echo "十六进制的结果是:$str3";
?>

运行结果:

数字123不同进制的输出结果:

十进制的结果是:123
八进制的结果是:83
十六进制的结果是:291

注意:如果给定的数值超出了int类型所能表示的最大范围,将会被当作float型处理,这种情况叫作整数溢出。同样,如果表达式的最后运算结果超出了int的范围,也会返回float型。

四、浮点型(float)

浮点数据类型可以用来存储整数,也可以保存小数。它提供的精度比整数大得多。在32位的操作系统中,有效的范围是1.7E-308~1.7E+308。在PHP 4.0以前的版本中,浮点型的标识为double,也叫双精度浮点数,两者没什么区别。

浮点型数据默认有2种书写格式,一种是标准格式,例如3.14159、0.365、-91.8。还有一种是科学记数法格式,例如3.62E1、859.63E-3。

【例】下面的实例是输出圆周率的近似值,用了3种书写方法:圆周率函数、传统书写格式和科学记数法。比较3种方法的输出结果。本实例完整代码如下。

<font face='楷体_gb2312' color='blue'>
<?php
echo "圆周率的三种书写方法:<p>";
echo "第一种:pi() = ".pi()."<p>"; //圆周率函数
echo "第二种:3.14159265359 = ". 3.14159265359 ."<p>"; //传统书写格式
echo "第三种:314159265359E-11 = ". 314159265359E- 11 ."<p>"; //科学记数法
?>
</font>

运行结果:

圆周率的三种书写方法:

第一种:pi() = 3.1415926535898
第二种:3.14159265359 = 3.14159265359
第三种:314159265359E-11 = 314159265359E- 11

注意:浮点型的数值只是一个近似值,所以要尽量避免在浮点型之间比较大小,因为最后的结果往往是不准确的。

PHP点点通
  • 本文由 发表于 2021年1月26日15:58:39
  • 转载请务必保留本文链接:https://www.phpddt.com/176.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: