首页 php教程 php手册 php中(等于和全等于)== 和 === 的区别和应用

php中(等于和全等于)== 和 === 的区别和应用

May 25, 2016 pm 04:48 PM

在php中等于和全等于在表达试上== 和 ===了,从简单层面来说就是一个简单等于,一个是精确定很高,下面我来给各位同学介绍== 和 === 的区别和应用,各位同学可参考.

在php中的符号等于'=='和全等于'==='的区别,从表面上看它们都是判断等号左右两把是否相等的功能,只是一个是两个等号,一个是三个等号.

我们都应该知道,php是一种弱类型的语句,他的变量、字符定义其实并不十分规范,比如 $a = '4′;我们可以说这个$a是一个字符,但是他又可以直接进行数字的加减乘除;而且我们还知道一句话,叫做,非零即真,那么这句好就是对于==这个符号来说的.

实例代码如下:

if(4!=false){echo 'ok'},
登录后复制

这个判断是成立的,他会输出ok;因为4不是零,那么就是真,真就不等于false,所以判断成立,就会输出ok,其实这里4在判断比较的时候,因为其对比对象的原因,所以这个4被转化为了布尔值ture,所以判断成立.当然如果这里用===也是成立的.

实例代码如下:

if(4!==false){echo 'ok'}
登录后复制

他也会输出ok,因为4本来就不是false,他们不是同一个字符.但是两者有个很重要的区别,就是,==或!=是会因为比对的对象而转化字符类型的,而===或!==是强制他不进行转化而原样进行对比,比如下面一个例子:

实例代码如下:

if(0!=false){echo 'ok'}
登录后复制

这个就不会输出ok,因为0就是false,判断不成立,但是如果你写

实例代码如下:

if(0!==false){echo 'ok'}
登录后复制

这个判断就成立,会输出ok,因为0如果不转化,那他就不是false,0就是0;

实例代码如下:

if('4′!=4){echo 'ok'}
登录后复制

这个就不会输出ok,因为他转化后相等,判断不成立,但是如果是

实例代码如下:

if('4'!==4){echo 'ok'};
登录后复制

这个就会输出ok,判断成立,因为在恒等面前,有单引号的4和没有单引号的4并不是同一个4,一个是数字,一个是个字符.所以这样看来他们的对比就很简单了.他们有什么实际应用呢,就是一些比较特殊的时候会用到.比如下面:

实例代码如下:

if(strpos('abc','a')!=false){echo 'ok'};
登录后复制

一段代码来看,实例代码如下:

<?php
$a = 0;
$b = false;
if ($a == $b) {
    echo "等于";
}
if ($a != $b) {
    echo "不等于";
}
?>
登录后复制

我们知道数值0也是代表假的.所以这个结果会输出"等于".如果我们把程序改下,用全等于的呢

实例代码如下:

<?php
$a = 0;
$b = false;
if ($a === $b) { //改成全等于
    echo "等于";
}
if ($a !== $b) {
    echo "不等于";
}
?>
登录后复制

这时候我们突然发现他会输出"不等于".这是为什么呢.

因为:等号只判断它们左右两边的最终结果值,而不判断数据类型.而全等于首先判断等号两边的数据类型是否一致.接着还要判断两边的最终结果值是否一致.如果都一致才会返回true呢.所以在例子中换成全等于他会判断两边的数据类型,$a 是数值型.而$b是布尔型,所以他会返回假值.==' 和 '!=='也是同样的原理.


               
               

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1664
14
CakePHP 教程
1423
52
Laravel 教程
1318
25
PHP教程
1269
29
C# 教程
1248
24
赛扬g4900与i36100相比哪个更优?(赛扬g4900与i34170相比哪个更优?) 赛扬g4900与i36100相比哪个更优?(赛扬g4900与i34170相比哪个更优?) Jan 01, 2024 pm 06:01 PM

赛扬g4900和i36100哪个好当涉及到赛扬G4900和I36100这两款处理器时,毫无疑问,I36100的性能更胜一筹。赛扬处理器通常被视为低端处理器,主要用于廉价笔记本电脑。而I3处理器则主要用于高端处理器,其性能非常出色。不论是玩游戏还是观看视频,使用I3处理器都不会出现任何卡顿情况。因此,如果你有可能,尽量选择购买英特尔I系列处理器,特别是用于台式机,这样你就能畅享网络世界的乐趣了。赛扬G4900T性能怎么样从性能方面来看,奔腾G4900T在频率方面表现出色,相比之前的版本,CPU性能

华硕主板与R55600(包括R55600u和5600h)兼容的选择 华硕主板与R55600(包括R55600u和5600h)兼容的选择 Jan 02, 2024 pm 05:32 PM

R55600搭配华硕哪个主板华硕ROGStrixB550-FGaming主板是一个非常出色的选择。它与Ryzen55600X处理器完美兼容,并提供出色的性能和功能。该主板具备可靠的供电系统,可支持超频,并提供丰富的扩展插槽和端口,满足日常使用和游戏需求。ROGStrixB550-FGaming还配备了高品质的音频解决方案、快速的网络连接和可靠的散热设计,确保系统保持高效稳定。此外,该主板还采用了华丽的ROG风格,配备了华丽的RGB照明效果,为您的计算机增添了视觉享受。总而言之,华硕ROGStri

航嘉s980和包豪斯哪个好(航嘉阿波罗和联力包豪斯o11) 航嘉s980和包豪斯哪个好(航嘉阿波罗和联力包豪斯o11) Jan 12, 2024 am 11:06 AM

航嘉s980和包豪斯哪个好航嘉(Huntkey)S980和包豪斯(BeQuiet)是两个不同品牌的电脑电源供应器(PSU)制造商。选择哪个更好取决于您的需求和个人偏好得到了消费者的认可和好评。他们的产品广泛应用于个人电脑、服务器、工业设备等领域。航嘉致力于提供高质量的电源产品,不断推出新的技术和创新的设计。他们的产品经过严格的质量控制和测试,确保能够稳定、高效地为设备提供电力。航嘉还注重环保和节能,努力减少对环境的影响。他们的电源供应器符合国际标准,并获得了多项认证和奖项。作为一家信誉良好的品牌

请问如何在关闭技嘉主板GA78LMTS2后关闭鼠标和键盘灯?(技嘉a88主板关机后鼠标灯无法关闭) 请问如何在关闭技嘉主板GA78LMTS2后关闭鼠标和键盘灯?(技嘉a88主板关机后鼠标灯无法关闭) Dec 26, 2023 pm 07:58 PM

技嘉主板GA78LMTS2关机后鼠标和键盘灯都亮着怎么关掉啊求助请检查BIOS中是否有"Deeppoweroffmode"模式,即深度掉电模式。该选项位于BIOS的Power设置选项中。如果将此选项设置为启用,关闭计算机后设备将不会亮起技嘉主板dled和led的区别区别如下:1、位置不同:直下式DLED是在液晶面板的后面,LED灯是以矩阵排列;侧入式LED则是将LED灯安装在面板的边框处,使光源从侧面照射出来2、节能:侧入式LED电视比直下式DLED电视更省电DLED和LED的区别在于,DLED

即将上市的代币:$DOGEL、$BRAIN、$BTD、$PINU 和 $PIMEME 即将上市的代币:$DOGEL、$BRAIN、$BTD、$PINU 和 $PIMEME Mar 03, 2025 pm 08:03 PM

加密货币市场持续发展,为投资者带来不断涌现的投资机会。新币上市总是备受关注,而2025年2月更是新币扎堆上市的月份,为投资者提供了丰富的选择。2025年2月值得关注的加密货币:不容错过的潜力项目本文将重点介绍五款即将在2月推出的加密货币项目,无论您是经验丰富的投资者还是新手,都能从中找到感兴趣的项目。它们分别是DogeLife($DOGEL)、DistriBrain($BRAIN)、比特币美元($BTD)、PiINU($PINU)和PIMEME($PIMEME)。请做好准备,将这些日

两两乘积之和 两两乘积之和 Sep 11, 2023 pm 07:33 PM

集合X={a,b,c}的成对乘积可以定义为所有可能的集合对乘积的和。集合的成对为Y={a*a,a*b,a*c,b*b,b*c,c*c},其中乘积是可交换的。因此,集合X的成对乘积是集合Y的元素之和,即aa+ab+ac+bb+bc+cc。在数学术语中,可能的配对乘积的总和可以表示为:$$\mathrm{\displaystyle\sum\limits_{i=1,j=i}^{i\leqn,j\leqn}\:(i,j)=i\timej}$$问题陈述给定一个数字n。在范围(1,n)内,包括n和1,找到成

使用C++编写,在矩阵中找到给定和的一对数字 使用C++编写,在矩阵中找到给定和的一对数字 Sep 09, 2023 pm 06:05 PM

在本文中,我们将讨论在给定矩阵中查找具有给定和的对的程序。例如-Input:matrix[n][m]={  {4,6,4,65},  {56,1,12,32},  {4,5,6,44},  {13,9,11,25}},SUM=20Output:Pairexists.Explanation:Sum=20isequaltothesumofnumbers9an

在Java中查找两个数组元素的最大和 在Java中查找两个数组元素的最大和 Sep 11, 2023 pm 02:13 PM

Twoelementsgivingthemaximumsuminanarraymeans,wehavetofindtwolargestarrayelementswhichwilleventuallygivethemaximumsumpossible.InthisarticlewewillseehowwecanfindthemaximumsumoftwoelementsinJava.ToshowyousomeinstancesInstance-1的中文翻译为:实例-1Supposewehaveth

See all articles