PHP一共支持八种数据类型,个中四种标量类型,即:
boolean 布尔型Integer 整型Float/double 浮点型String 字符串型两种复合类型,即:
Array 数组Object 工具两种分外类型,即:
Resource 资源Null 空值
下面我们来逐一先容。
标量数据类型
布尔型(boolean)
布尔型只有两个值,要么false要么true。它是PHP中较为常用的数据类型之一,常用来作为条件或分支判断又或是返回值。不过由于PHP是弱类型措辞的特性,我们在对布尔型变量进行判断时须要把稳,其他标量类型的空值或0值都会被认定为false。
例:
<?php//声明一个boolean类型变量$bool = false;var_dump($bool);//声明一个空字符串$str = "";var_dump($str == $bool);//声明一个值为0的整型$num = 0;var_dump($num == $bool);//声明一个空数组$arr = array();var_dump($arr == $bool);
运行结果:
根据程序运行结果我们可以看出,在将布尔型的false值与其他标量数据类型的空值进行疏松比较时,PHP会认定它们是相等的。
把稳:var_dump()函数是PHP中内置的打印输出变量或表达式的调试函数。在今后日常开拓中时常会用到,关于它的详细用法后续会做大略先容。
整型
整型数据类型只能包含整数,在32位和64位的操作系统中它们的有效数值范围会有不同。
例:
<?php// 在64位系统下$a = PHP_INT_MAX;$b = PHP_INT_MIN;var_dump($a,$b);
运行结果:
在32位系统下,有效数值范围是 -2147483648~2147483647
浮点型
浮点型既可以存储整数,也可以存储小数。
例:
<?php// 在64位系统下$a = PHP_INT_MAX;$b = PHP_INT_MIN;$c = PHP_FLOAT_MAX;$d = PHP_FLOAT_MIN;var_dump($a, $b,$c,$d);
运行结果:
字符串型
字符串型是一个连续的字符序列,它可以包含字符,整数,浮点数以及符号等等。字符串中的每个字符只占一个字节。对付字符串的声明,可以由单引号,双引号或定界符(<<<)来完成。
例:
<?php$str1 = '公众年夜众号程序员菜菜';$str2 = ""大众号程序员菜菜";$str3 = <<<EOF"大众年夜众号程序员菜菜EOF;var_dump($str1, $str2, $str3);
运行结果:
把稳:
PHP 定界符 EOF 的浸染便是按照原样,包括换行格式什么的,输出在其内部的东西;在 PHP 定界符 EOF 中的任何分外字符都不须要转义;双引号懂得更多分外字符串的转义序列单引号只能转义在单引号中引起来的单引号和转义符本身双引号会解析变量,输出变量值单引号不会解析变量单引号在输出速率上比双引号快例:
<?php$str1 = '"大众号程序员菜菜\n感谢大家关注';$str2 = "公众号程序员菜菜\n感谢大家关注";$str3 = <<<EOF<p>"大众年夜众号程序员菜菜\n感谢大家关注</p>EOF;var_dump($str1, $str2, $str3);$str4 = '$str1';$str5 = "$str1";var_dump($str4, $str5);
运行结果:
复合类型
数组
数组是一组数据的凑集,它是把一系列数据组织起来,形成一个可操作的整体。数组中可以包括很多数据,如标量数据、数组、工具、资源以及PHP中支持的其他语法构造。数组中的每个数据称为一个元素,元素包括索引(键名)和值两个部分。元素的索引可由数字或字符串组成,元素的值可以是多种数据类型。
数组是PHP根本知识中最主要的一个部分,须要大家好好学习。
例:
<?php// 声明一个数组变量有如下两种办法$arr1 = [];$arr2 = array();//给数组添加值$arr1[] = 1;$arr1[] = "程序员菜菜";$arr1[] = 1.2222;$arr1[] = false;$arr1[] = true;$arr1[] = [1,2,3];//打印数组var_dump($arr1);
运行结果:
把稳:在数组中,在未明确定义索引的情形下,索引总是从0开始。
通过指定键名我们访问到数组中键名所对应的数组值。但我们须要把稳的是所指定的键名是要存在于数组中的,否则程序会报错,索引未定义或索引越界。我们也可以通过循环语句来访问数组中的每一个元素。
例:
<?php// 声明一个数组变量有如下两种办法$arr1 = [];$arr2 = array();//给数组添加值$arr1[] = 1;$arr1[] = "程序员菜菜";$arr1[] = 1.2222;$arr1[] = false;$arr1[] = true;$arr1[] = [1,2,3];$arr1["name"] = ""大众年夜众号程序员菜菜";foreach ($arr1 as $key => $value) { echo "这是第{$key}个元素:"; var_dump($value);}
运行结果:
工具
工具是系统中用来描述客不雅观事物的一个实体,它是构成系统的一个基本单位。一个工具由一组属性和对这组属性进行操作的一系列方法组成。工具数据类型也可以用于存储数据。在 PHP 中,工具必须声明。首先,你必须利用class关键字声明类工具。类是可以包含属性和方法的构造。
例:
<?php//声明一个工具class User { public $username; / @return mixed / public function getUsername(){ return $this->username; } / @param mixed $username / public function setUsername($username): void{ $this->username = $username; }}// 访问工具$user = new User();// 调用工具中的方法$user->setUsername("程序员菜菜");$username = $user->getUsername();echo $username;
运行结果:
分外类型
资源类型
PHP资源resource是一种分外变量,保存了到外部资源的一个引用。
常见资源数据类型有打开文件、数据库连接、图形画布区域等。
由于资源类型变量保存有为打开文件、数据库连接、图形画布区域等的分外句柄,因此将其它类型的值转换为资源没故意义。
例:
<?php$fp = fopen("C:UsersadminDesktopphp8PHP8入门指南-语法根本与变量.docx","w");// 利用get_resource_type()函数可以获取一个资源类型echo get_resource_type($fp)." ";
运行结果:
Null
NULL 值表示变量没有值。NULL 是数据类型为 NULL 的值。
NULL 值指明一个变量是否为空值。 同样可用于数据空值和NULL值的差异。
例:
<?php$str = "程序员菜菜";var_dump($str);$str = null;var_dump($str);//Null与布尔值false进行疏松比较时是相等的var_dump($str == false);
运行结果: