首页 > 编程语言 >PHP 两个等号 和 三个等号的区别

PHP 两个等号 和 三个等号的区别

时间:2022-10-09 10:39:22浏览次数:49  
标签:相等 false abc 区别 echo 三个 str 等于 PHP


我们来看一下下面一个程序:

$str = “abc”; 
if (0==$str)
{echo “真”}
else
{echo “假”}

这个程序运行的结果出人意料, “fupeng”居然 被PHP认为和0相等了。 为什么会出现这样的情况呢? 执行关系运算”==“时要求运算符两边的数据 类型必须一致,所以等号右边的字符串被强制 转换为了整型0。

$str = “abc”; 
if (0===$str)
{echo “真”}
else
{echo “假”}

全等于操作过程如下: 1.判断全等于操作符2边的数据类型是否相同 如果不相同,则返回false 2.判断全等于操作符2边的值是否相等,如果 不相等,则返回false 3.最后将上面2步的操作进行与操作。返回与操作的结果。

两个等号 等于 是 先把 等号两边的变量 转化成相同的类型,如果转换类型后的结果 是相等的, 就认为相等。

总结
(三个等号) 等于 (类型转换+ 两个等号)


标签:相等,false,abc,区别,echo,三个,str,等于,PHP
From: https://blog.51cto.com/u_15815563/5739808

相关文章

  • 坑爹的BOM PHP
    PHP打印了一个字符串,然后在Android客户端上取一下,然后就发现这个字符串前后多了许多feff这样的字符。。最后发现,php文件是BOM的,因为是从windows里传上去的......
  • PHP 常用函数
    时间http://php.net/manual/zh/ref.datetime.phpdate_default_timezone_get()—取得一个脚本中所有日期时间函数所使用的默认时区date_default_timezone_set()—设定用......
  • PHP empty()
    PHP中哪些情况是空的呢Thefollowingthingsareconsideredtobeempty:“”(anemptystring)0(0asaninteger)0.0(0asafloat)“0”(0asastring)......
  • tcp与udp的区别
    TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接TCP要求的系统资源较多,UDP较少TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差......
  • PHP 安装
    ​​http://php.net/manual/zh/install.unix.nginx.php​​cd php-5.6.12./configure--enable-fpm--with-mysql--prefix=/home/work/fupeng/phpmakemakeinstall......
  • SOCK5代理服务器与HTTP代理有什么区别?
    SOCKS5代理与HTTP代理的区别:SOCKS工作在比HTTP代理更低的层次:SOCKS使用握手协议来通知代理软件其客户端试图进行的连接SOCKS,然后尽可能透明地进行操作,而常规代理可能会......
  • Flume和Logstash 都可以做日志收集,那有什么区别呢
      这个问题诞生于我和朋友的聊天,我问它最近在做什么,他说Flume,咱不懂呀,偷偷的百度了一下。短暂的看到也是做日志收集的,这让我瞬间想到了logstash,就是 ELK 组合中的一员......
  • png图片和jpg图片有什么区别
    首先在外观上,没有任何区别。png格式的图片所占存储大小明显大于jpg图片,相比之下jpg格式用于很多场合。png格式图片可进行无损压缩,可以在PS中重新编辑;jpg格式图片会牺牲图......
  • for in 和 for of的区别
    1.循环数组区别一:forin和forof都可以循环数组,forin输出的是数组的index下标,而forof输出的是数组的每一项的值。constarr=[1,2,3,4]//for...infor(const......
  • TCP与UDP的区别
    连接性TCP是面向连接的协议,在收发数据前必须和对方建立可靠的连接,建立连接的3次握手、断开连接的4次挥手,为数据传输打下可靠基础;UDP是一个面向无连接的协议,数据传输前,源......