PHP 支持八种原始类型(type)。

四种标量类型:

string(字符串)

integer(整型)

float(浮点型,也作 double )

boolean(布尔型)

两种复合类型:

array(数组)

object(对象)

两种特殊类型:

resource(资源)

NULL(空)

如何查看变量类型

通过 gettype() 函数可以方便的查看某个变量的类型:

<?php$var_bool = TRUE; // a boolean$var_str = "foo"; // a string$var_int = 12; // an integerecho gettype($var_bool); // 输出 booleanecho gettype($var_str); // 输出 stringecho gettype($var_int); // 输出 integer?>

提示

由于历史原因,如果是 float 类型数据,gettype() 函数返回的是 double,而不是 float 。

如果想查看某个表达式的值和类型,请使用用 var_dump() 函数。

如果要将一个变量强制转换为某类型,可以对其使用强制转换或者 settype() 函数。

PHP 字符串

字符串是字符序列,比如 "Hello world!"。

字符串可以是引号内的任何文本。您可以使用单引号或双引号:

实例

1
2
3
4
5
6
7
<?php 
$x "Hello anxia.com!";
echo $x;
echo "<br>"
$x 'Hello anxia.com!';
echo $x;
?>

PHP 整数

整数是没有小数的数字。

整数规则:

  • 整数必须有至少一个数字(0-9)

  • 整数不能包含逗号或空格

  • 整数不能有小数点

  • 整数正负均可

  • 可以用三种格式规定整数:十进制、十六进制(前缀是 0x)或八进制(前缀是 0)

在下面的例子中,我们将测试不同的数字。PHP var_dump() 会返回变量的数据类型和值:

实例

1
2
3
4
5
6
7
8
9
10
<?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 浮点数

浮点数是有小数点或指数形式的数字。

在下面的例子中,我们将测试不同的数字。PHP var_dump() 会返回变量的数据类型和值:

实例

1
2
3
4
5
6
7
8
9
10
<?php 
$x = 10.365;
var_dump($x);
echo "<br>"
$x = 2.4e3;
var_dump($x);
echo "<br>"
$x = 8E-5;
var_dump($x);
?>

PHP 逻辑/布尔类型

逻辑是 true 或 false。

1
2
$x=true;
$y=false;

逻辑常用于条件测试。您将在本教程稍后的章节学到更多有关条件测试的知识。

PHP 数组

数组在一个变量中存储多个值。

在下面的例子中,我们将测试不同的数组。PHP var_dump() 会返回变量的数据类型和值:

实例

1
2
3
4
5
6
7
8
9
<?php 
$cars=array("Volvo","BMW","SAAB");
var_dump($cars);
?>
 
$myarr=array("one"=>"first","two"=>"second");
foreach($myarr as $key=>$value){
    echo "Key:".$key."<br>"."Value:".$value."<br>";
}

您将在本教程稍后的章节学到更多有关数组的知识。

PHP 对象

对象是存储数据和有关如何处理数据的信息的数据类型。

在 PHP 中,必须明确地声明对象。

首先我们必须声明对象的类。对此,我们使用 class 关键词。类是包含属性和方法的结构。

然后我们在对象类中定义数据类型,然后在该类的实例中使用此数据类型:

实例

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
class Car{
    var $color;
    function Car($color="black"){
        $this->color=$color;
    }
    function getcolor(){
        return $this->color;
    }
}
$aa=new Car();
echo $aa->getcolor();
?>

您将在本教程稍后的章节学到更多有关对象的知识。

PHP NULL 值

特殊的 NULL 值表示变量无值。NULL 是数据类型 NULL 唯一可能的值。

NULL 值标示变量是否为空。也用于区分空字符串与空值数据库。

可以通过把值设置为 NULL,将变量清空:

实例

<?php
$x="Hello world!";
$x=null;
var_dump($x);
?>

php基础教程-数据类型的更多相关文章

  1. objective-c基础教程——学习小结

    objective-c基础教程——学习小结   提纲: 简介 与C语言相比要注意的地方 objective-c高级特性 开发工具介绍(cocoa 工具包的功能,框架,源文件组织:XCode使用介绍) ...

  2. (转)Windows驱动编程基础教程

    版权声明     本书是免费电子书. 作者保留一切权利.但在保证本书完整性(包括版权声明.前言.正文内容.后记.以及作者的信息),并不增删.改变其中任何文字内容的前提下,欢迎任何读者 以任何形式(包括 ...

  3. HTML入门基础教程相关知识

    HTML入门基础教程 html是什么,什么是html通俗解答: html是hypertext markup language的缩写,即超文本标记语言.html是用于创建可从一个平台移植到另一平台的超文 ...

  4. HGE基础教程

    作者:寰子 来源:http://www.hgechina.com/前言: 写道: 无意中发现了hge中文社区,听朋友介绍,认识了hge,然后开始对它进行研究,并使用hge开始制作游戏. 因为我所得的资 ...

  5. [SQL基础教程] 3-1 对表进行聚合查询

    [SQL基础教程] 3-1 对表进行聚合查询 聚合函数 用于合计的函数称为聚合函数或者集合函数 COUNT SUM AVG MAX MIN SELECT COUNT(*) FROM table; SE ...

  6. [SQL基础教程]1-4 SQL 表的创建

    [SQL基础教程]1-4 SQL 表的创建 创建数据库 语法 CREATE DATABASE <数据库名称> // example CREATE DATABASE shop; 创建表 语法 ...

  7. JavaScript对象属性的基础教程指南

    JavaScript是使用“对象化编程”的,或者叫“面向对象编程”的.所谓“对象化编程”,意思是把JavaScript能涉及的范围划分成大大小小的对象,对象下面还继续划分对象直至非常详细为止,所有的编 ...

  8. Web前端-JavaScript基础教程上

    Web前端-JavaScript基础教程 将放入菜单栏中,便于阅读! JavaScript是web前端开发的编程语言,大多数网站都使用到了JavaScript,所以我们要进行学习,JavaScript ...

  9. ELK(elasticsearch+kibana+logstash)搜索引擎(二): elasticsearch基础教程

    1.elasticsearch的结构 首先elasticsearch目前的结构为 /index/type/id  id对应的就是存储的文档ID,elasticsearch一般将数据以JSON格式存储. ...

随机推荐

  1. maven pox配置

    Maven教程初级篇02:pom.xml配置初步 1. 创建项目并更改项目基本配置信息 在命令行下运行如下命令创建一个项目: 1 mvn archetype:create -DgroupId=net. ...

  2. js 将long型字符串转换成日期格式

    工作中难免会碰到日期的转换,往往为了方便,后台都是把时间以long型(形如1343818800000)返回给web前端.再有前端自己根据页面需求转换成相应的日期格式.这里将我常用的一个转换时间的函数贴 ...

  3. HK一行所见闻

    香港一行 20多年来,未未去过HK,前段时间由于工作关系去了趟HK.感触良多. 一清早,福田过关,做火车,做地铁,一通到了目的地. 总结对那边的印象: 1,所有人都是粤语,包括工作交流.而且他们不怎么 ...

  4. 如何编写 Cloud9 JavaScript IDE 的功能扩展

    上周末我们在JSConf.eu发布了 Cloud9 IDE ,同时发布了对应的GitHub项目.在4天时间里该项目得到340个人的关注和将近50个fork.Cloud9的口号是由"由Java ...

  5. C#函数式编程之可选值

    在我们的实际开发中已经会遇到可空类型,而在C#中自从2.0之后就提供了可空类型(Nullable<T>),普通的值类型是不可以赋值为NULL,但是在类型的后面加上问号就变成了可空类型,这样 ...

  6. [.net 面向对象编程基础] (3) 基础中的基础——数据类型

    [.net 面向对象编程基础] (3) 基础中的基础——数据类型 关于数据类型,这是基础中的基础. 基础..基础..基础.基本功必须要扎实. 首先,从使用电脑开始,再到编程,电脑要存储数据,就要按类型 ...

  7. Windows内存小结

    以前写过一篇理解程序内存, 当时主要是针对用户态,下面再稍微深入一点: 我们以32位程序为例(不启用AWE), 总共4G虚拟空间,其中低2G属于用户态, 高2G属于操作系统内核, 每个程序都有自己的低 ...

  8. java 锁!

    问题:如何实现死锁. 关键: 1 两个线程ta.tb 2 两个对象a.b 3 ta拥有a的锁,同时在这个锁定的过程中,需要b的锁:tb拥有b的锁,同时在这个锁定的过程中,需要a的锁: 关键的实现难点是 ...

  9. Java-数组练习4

    16.按要求编写Java应用程序.编写一个名为Test的主类,类中只有一个主方法: 在主方法中定义一个大小为50的一维整型数组,数组名为x,数组中存放着{1, 3,5,…,99}输出这个数组中的所有元 ...

  10. 初入职场的建议--摘自GameRes

    又开始一年一度的校招了,最近跑了几个学校演讲,发现很多话用短短的一堂职业规划课讲还远远不够,因为那堂课仅仅可能帮大家多思考怎样找到一份合适的工作,并没有提醒大家怎样在工作中发展自己的职业. 见过这么多 ...