PHP 类型比较表
以下的表格显示了 PHP 类型和比较运算符在松散和严格比较时的作用。该补充材料还和类型戏法的相关章节内容有关。同时,大量的用户注释和 » BlueShoes 的工作也给该材料提供了帮助。
在使用这些表格之前,需要明白变量类型及它们的意义。例如,"42" 是一个字符串而 42 是一个整数。FALSE 是一个布尔值而 "false" 是一个字符串。
Note:
HTML 表单并不传递整数、浮点数或者布尔值,它们只传递字符串。要想检测一个字符串是不是数字,可以使用is_numeric() 函数。
Note:
在没有定义变量 $x 的时候,诸如 if ($x) 的用法会导致一个
E_NOTICE级别的错误。所以,可以考虑用 empty() 或者 isset() 函数来初始化变量。
| 表达式 | gettype() | empty() | is_null() | isset() | boolean : if($x) |
|---|---|---|---|---|---|
| $x = ""; | string | TRUE |
FALSE |
TRUE |
FALSE |
| $x = null; | NULL | TRUE |
TRUE |
FALSE |
FALSE |
| var $x; | NULL | TRUE |
TRUE |
FALSE |
FALSE |
| $x is undefined | NULL | TRUE |
TRUE |
FALSE |
FALSE |
| $x = array(); | array | TRUE |
FALSE |
TRUE |
FALSE |
| $x = false; | boolean | TRUE |
FALSE |
TRUE |
FALSE |
| $x = true; | boolean | FALSE |
FALSE |
TRUE |
TRUE |
| $x = 1; | integer | FALSE |
FALSE |
TRUE |
TRUE |
| $x = 42; | integer | FALSE |
FALSE |
TRUE |
TRUE |
| $x = 0; | integer | TRUE |
FALSE |
TRUE |
FALSE |
| $x = -1; | integer | FALSE |
FALSE |
TRUE |
TRUE |
| $x = "1"; | string | FALSE |
FALSE |
TRUE |
TRUE |
| $x = "0"; | string | TRUE |
FALSE |
TRUE |
FALSE |
| $x = "-1"; | string | FALSE |
FALSE |
TRUE |
TRUE |
| $x = "php"; | string | FALSE |
FALSE |
TRUE |
TRUE |
| $x = "true"; | string | FALSE |
FALSE |
TRUE |
TRUE |
| $x = "false"; | string | FALSE |
FALSE |
TRUE |
TRUE |
PHP 类型比较表的更多相关文章
- 随笔-SQL的三种存储引擎即三种类型的表
MYSQL 的环境变量:......server/bin下 引擎(Engine):是电子平台上开发程序或系统的核心组件.利用引擎,开发者可迅速建立.铺设程序所需的功能,或利用其辅助程序的运转.一般而言 ...
- SNF软件开发机器人-子系统-功能-功能类型(普通表改为树型表)
功能类型(普通表改为树型表) 功能类型分为普通功能和树形功能.因为资源表中不存在ParentId字段,故只能将多表的主表改为树型表. 1.效果展示: 2.使用说明: (1)当需要用一张普通的资源表显示 ...
- MYSQL类型与JAVA类型对应表
MYSQL类型与JAVA类型对应表: 类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) VARCHAR L+N VARCHAR java.lang.String 12 CHAR ...
- 常见MIME类型例表
常见MIME类型例表: 序号 内容类型 文件扩展名 描述 1 application/msword doc Microsoft Word 2 application/octet-stream bin ...
- MIME类型对应表:
MIME类型对应表: 常用MIME类型: 扩展名 MIME类型 .iso ISO File .rar application/x-rar-compressed .zip application/zip ...
- MYSQL数据库类型与JAVA类型对应表
MYSQL数据库类型与JAVA类型对应表 MYSQL数据库类型与JAVA类型对应表 类型名称 显示长度 数据库类型 JAVA类型 JDBC类型 索引(int) VARCHAR L+N VARCHA ...
- 建表过程-列名&列类型&修改表小试题C
#新增数据 INSERT INTO goods VALUES(10,'豆豆','男',85.2,'2016-12-14',5000.36,'2016-12-14 12:05:06','高') INSE ...
- 建表过程-列名&列类型&修改表B
怎么建表? 主键 名称 重量 价格 生产日期 保质期 产地 种类 分析:我们只要把第一行的表头建好后,这张表也就完成了. 术语:建表的过程就是声明字段过程 ...
- SQL 中不同类型的表连接
http://www.linuxidc.com/Linux/2012-08/68035.htm 1.简介 在关系型数据库中,join操作是将不同的表中的数据联合在一起时非常通用的一种做法.首先让我们看 ...
随机推荐
- 在win8.1 64位环境下有关Oracle的安装和卸载
1,Oracle安装 3 注意:在win8.1环境下安装64位的oracle客户端,注意配置是1g的 2.Oracle的卸载:http://jingyan.baidu.com/article/f7ff ...
- mongodb3.0 db.addUser报错
> db.addUser("ydkt","ydkt") --19T09:: E QUERY TypeError: Property 'addUser' o ...
- 关于RESTful
http://www.ruanyifeng.com/blog/2011/09/restful.html (1)每一个URI代表一种资源: (2)客户端和服务器之间,传递这种资源的某种表现层: (3)客 ...
- Android URI简介
就Android平台而言,URI主要分三个部分:scheme, authority and path.其中authority又分为host和port.格式如下:scheme://host:port/p ...
- 关于TFS2012无法发送警报邮件的问题
前几天把公司的TFS从2010升级到2012,整个过程经历了3个小时,过程比较顺利.升级完成后眼馋各种新功能,感叹知识真是待到用时方恨少呐,只得一个一个去摸索了.其中有一个“警报”的功能让我印象深刻( ...
- HDU2050(分平面问题)
分平面问题: 一.n条直线最多分平面问题. n条直线最多可以把平面分成多少个区域? 此类问题主要采用递归的思想.当有n-1条直线时,平面最多被分成了f(n-1)块区域.如果要使第n条直线分的区域最多, ...
- Java中的不可变类
概念:不可变类的意思是创建该类的实例后,该实例的属性是不可改变的.java中的8个包装类和String类都是不可变类.所以不可变类并不是指该类是被final修饰的,而是指该类的属性是被final修饰的 ...
- 这是一个在Windows live 上实验的文章
这是一个windows 实验用的文章,希望一次成功
- mysql查询最近一小时的数据
date_sub()函数: DATE_SUB(date,INTERVAL expr type) 实例: SELECT NOW(),DATE_SUB(NOW(),INTERVAL HOUR) as th ...
- SKTransition类
继承自 NSObject 符合 NSObject(NSObject) 框架 /System/Library/Frameworks/SpriteKit.framework 可用性 可用于iOS 7.0 ...