PHP 新手入门之数据类型
标量数据类型:是数据结构中最基本单元,只能储存一个数据
布尔型:boolean 字符串型:string 浮点型: float 整型 : integer
两种复合类型:
array() 数组
object 对象
俩种特殊类型
resource 资源型
null 空
判断类型的函数gettype();
整型:整数是一个没有小数的数字,
1.整数必须至少有一个数字 (0-9)
2. 整数不能包含逗号或空格
3. 整数是没有小数点的
4. 整数可以是正数或负数
5. 整型可以用三种格式来指定:十进制, 十六进制( 以 0x 为前缀)或八进制(前缀为 0)
<?php $x = 5985; var_dump($x); echo "<br>"; $x = -345; // 负数 var_dump($x); echo "<br>"; $x = 0x8C; // 十六进制数 var_dump($x); echo "<br>"; $x = 047; // 八进制数 var_dump($x); ?>
注:以上代码中,我们测试不同的数,PHP var_dump() 函数返回变量的数据类型和值
字符串型:
一个字符串是一串字符的序列,就像 "Hello world!"
<?php $x = "Hello world!"; echo $x; echo "<br>"; $x = 'Hello world!'; //echo $x; var_dump($x); ?>
注:使用var_dump() 输出,已经告诉我们 'hello wordl!' 是一个string类型,长度为12
浮点型
浮点数是带小数部分的数字,或是指数形式
<?php $x = 10.365; var_dump($x); echo "<br>"; $x = 2.4e3; var_dump($x); echo "<br>"; $x = 8E-5; var_dump($x); ?>
注:2.4e3 这种事以科学计数法来写的 2.4e5 = 2.4*10^5 即等于2.4乘以10的5次方
布尔型:
布尔型的值只有true和false
<?php $x = true; $y = false; var_dump($x); echo "</br>"; var_dump($y); ?>
注:布尔型一般用于条件判断
数组类型 array
数组可以在一个变量中存储多个值
<pre> <?php $cars=array("Volvo","BMW","Toyota"); var_dump($cars); ?> </pre>
注:这只是一个简单的数组,后面会讲到数组的遍历
对象:object
1. 对象数据类型也可以用于存储数据
2. 在 PHP 中,对象必须声明
<?php class Car{ var $color; function Car($color="green") { $this->color = $color; } function what_color() { return $this->color; } } ?>
注:首先,你必须使用class关键字声明类对象。类是可以包含属性和方法的结构。
然后我们在类中定义数据类型,然后在实例化的类中使用数据类型:
以上实例中PHP关键字this就是指向当前对象实例的指针,不指向任何其他对象或类
NULL:
1. 特殊的 NULL 值表示一个变量没有值,NULL 类型唯一可能的值就是 NULL
2. 在下列情况下一个变量被认为是 NULL
(1). 被赋值为 NULL
(2).尚未被赋值
(3).被unset()
3.NULL 不可写null
is_null
is_null() 函数检测变量是否为 NULL ,如果变量是 NULL 则返回 TRUE,否则返回 FALSE
<?php header("Content-type: text/html; charset=utf-8");//设置编码 $var = NULL; if(is_null($var)){ echo '$var 为 NULL'; } else { echo '$var 变量非 NULL'; } ?>
资源:resource
资源是一种特殊的变量类型,保存了到外部资源的一个引用:如打开文件、数据库连接、图形画布区域等。资源是通过专门的函数来建立和使用的
<?php if(!file_exists("test.txt")){ $fh = fopen("test.txt","w"); //打开文件 echo get_resource_type($fh); // 输出:stream fclose($fh); //关闭文件 } ?>
由于资源类型变量保存有为打开文件、数据库连接、图形画布区域等的特殊句柄,因此无法将其它类型的值转换为资源