字符,数字,特殊符号的比较依赖ASC II表,本表原先有127个,后来又扩充了一些,里面包含了奇奇奇怪的符号。
ASC II表 https://baike.baidu.com/item/ASCII/309296?fr=aladdin#3
英文对照:http://www.asciitable.com/
 
1.整型和整型进行比较,与数学规则相同
 $a = 1;
$b = 2;
var_dump( $a, $b );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a > $b );
2.浮点型和浮点型进行比较,与数学规则相同
 $a = 1.0;
$b = 2.0;
var_dump( $a, $b );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a > $b );
3.字符串型和字符串型比较,
第一种情况,只包含字符序列,参照ASC II表中字符对应数值大小,如果是多位,第一位比第二位权重高,第二位比第三位权重高,...先比较第一位,第一位相同,比较第二位,第二位相同比较第三位...
第二种情况,只包含数字,转换为数字,参照数学规则。
第三种情况,数字和字符序列掺杂,和算数运算符不同,比价运算符不进行自动类型转换;比较参照ASC II表,同第一种情况。
 $a = 'aa';
$b = 'v';
var_dump( $a, $b );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a < $b ); $a = '11';
$b = '2';
var_dump( $a, $b );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a < $b ); $a = '11a';
$b = '2c';
var_dump( $a, $b );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a < $b );
var_dump( $a + $b );
4.布尔型和布尔型比较,布尔型true和布尔型false类型相等,但布尔型true的值大于布尔型false
 $a = true;
$b = false;
var_dump( $a, $b );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a > $b );
5.空类型null和空类型null比较,二者的类型和值都相等
 $a = null;
$b = null;
var_dump( $a, $b );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a > $b );
6.整型和浮点型比较,除类型外,参照数学规则
 $a = 1;
$b = 1.0;
var_dump( $a, $b );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a > $b );
7.整型和字符串型整数比较,参照数学规则
 $a = 2;
$b = '1';
var_dump( $a, $b );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a > $b );
8.整型和字符串型浮点数比较,参照数学规则
 $a = 2;
$b = '1.0';
var_dump( $a, $b );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a > $b );
9.整型和字符串型字母序列(不能转换为数字的)比较,会将字符序列转换为数字0
 $a = 0;
$b = 'ab';
var_dump( $a, $b );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a > $b );
10.整型和布尔型比较,布尔型true会被视为整数1,布尔型false会被视为整数0
 $a = 1;
$b = true;
$c = false;
var_dump( $a, $b, $c );
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a > $c );
11.整型和空类型null比较,空类型null值会被认为是整数0
 $a = 0;
$b = null;
var_dump( $a, $b);
var_dump( $a == $b );
var_dump( $a != $b );
var_dump( $a === $b );
var_dump( $a !== $b );
var_dump( $a > $b );

以php中的比较运算符操作整型,浮点型,字符串型,布尔型和空类型的更多相关文章

  1. 以php中的算数运算符操作(整型,浮点型,字符串型,布尔型,空类型)数据

    // 环境 // // php版本 // PHP 7.0.33-0+deb9u1 (cli) (built: Dec 7 2018 11:36:49) ( NTS ) // Copyright (c) ...

  2. 以php中的自增自自减运算符操作(整型,浮点型,字符串型,布尔型,空类型)数据

    // 环境 // // php版本 // PHP 7.0.33-0+deb9u1 (cli) (built: Dec 7 2018 11:36:49) ( NTS ) // Copyright (c) ...

  3. MySQL中的数据类型 [数值型、字符串型、时间日期型]

    MySQL中的数据类型 [数值型.字符串型.时间日期型] MySQL中各数据类型 1. 数值类型(整型) 类型 数据大小 类型 (无符号:unsigned) 数据大小 存储空间 tinyint -12 ...

  4. python学习3—数据类型之整型、字符串和布尔值

    python学习3-数据类型之整型.字符串和布尔值 数据类型 python3支持的数据类型共有6种: 1 Number 2 String 3 List 4 Tuple 5 Set 6 Dictiona ...

  5. python整型-浮点型-字符串-列表及内置函数(上)

    整型 简介 # 是否可变类型: 不可变类型 # 作用:记录年龄.手机号 # 定义: age = 18 # --> 内部操作 age = int(18) # int('sada') # 报错 in ...

  6. C++中将整型数与字符串型之间的类型转换

    整数转换成字符串类型: 方法一: 这里用到了char *itoa(int value, char *string, int radix); 函数当中参数为:int value 被转换的整数,char ...

  7. 通过js判断整型,浮点型,布尔型,字符串型

    <!DOCTYPE html> <html > <head>     <meta charset="UTF-8">     < ...

  8. [.net 面向对象编程基础] (6) 基础中的基础——运算符和表达式

    [.net 面向对象编程基础] (6) 基础中的基础——运算符和表达式 说起C#运算符和表达式,小伙伴们肯定以为很简单,其实要用好表达式,不是一件容易的事.一个好的表达式可以让你做事半功倍的效果,比如 ...

  9. python 基本数据类型以及运算符操作

    一.基本数据类型 为何要区分类型? 数据类型的值是变量值得类型,变量值之所以区分类型,是因为变量的值 用来记录事物的状态,而事物的状态有不同的种类,对应着,也必须用不 用类型去区分它们. 1.数字类型 ...

随机推荐

  1. cnetos7--zabbix(3.4)-server安装

    1.安装前准备 (1)关闭防火墙 [root@localhost ~]#Systemctl stop firewalld.service (2)开机关闭防火墙 [root@localhost ~]#S ...

  2. spaceclaim脚本(内摆线)

    import math #导入数学模块,因为会使用π def x_comp(k,r,t): #定义x坐标的计算函数 return r * (k -1) * math.cos(t) + r * math ...

  3. fluent求平均温度、最高低温度和平均传热系数【转载】

    摘自<ANSYS FLUENT技术基础与工程应用:流动传热与环境污染控制领域> 一.平均温度的计算: 双击导航栏中Result下方的Report进入Report任务页面,双击其中的Volu ...

  4. 【多线程与并发】Java并发工具类

    主要有两类 ①并发流程控制相关:CountDownLatch.CyclicBarrier.Semaphore ②线程间交换数据相关:Exchanger: CountDownLatch 作用:允许一个或 ...

  5. Thingsboard HTTP连接至服务器

    当布署了Thingsboard服务器后,可以通过在服务器地址后,加入swagger-ui.html来打开API文档

  6. 深度学习面试题05:激活函数sigmod、tanh、ReLU、LeakyRelu、Relu6

    目录 为什么要用激活函数 sigmod tanh ReLU LeakyReLU ReLU6 参考资料 为什么要用激活函数 在神经网络中,如果不对上一层结点的输出做非线性转换的话,再深的网络也是线性模型 ...

  7. 巧用 CSS 实现酷炫的充电动画

    循序渐进,看看只使用 CSS ,可以鼓捣出什么样的充电动画效果. 画个电池 当然,电池充电,首先得用 CSS 画一个电池,这个不难,随便整一个: 欧了,勉强就是它了.有了电池,那接下来直接充电吧.最最 ...

  8. 100-continue

    https://wiki.open.qq.com/wiki/技术优化原则#1._.E7.A8.8B.E5.BA.8F.E8.AE.BE.E8.AE.A1.E6.97.B6.E9.9C.80.E8.A6 ...

  9. Faster async functions and promises

    https://v8.dev/blog/fast-async async function computeAnswer() { return 42;}undefinedconst p = comput ...

  10. 利用Word发布文章到cnblogs博客

    利用Word发布文章到cnblogs博客 用博客园cnblogs:http://www.cnblogs.com/博客名称/services/metablogapi.aspx,word老是提醒" ...