php中 0 == ‘’(0等于任意字符串) 判断是否成立 返回true

news2024/11/17 19:39:16

php中不同类型变量之间比较大小

      • 一、背景
      • 二、探究0==''是为什么?
      • 三、探究 0=='all'是为什么?
      • 四、程序中如何判断0是否等于指定字符串

一、背景

最近在项目实际开发中,我需要判断前端传来的参数值是否等于一个字符串;然后发现当参数值是0时,在使用if($param == 'all')
时,永远是true的;

  • 首先:
    0==‘’, 0== null 是大家熟知的,但是 0=='all’为啥也为真嘞?

  • 那么先来看一下0==''是为什么?

二、探究0==''是为什么?

0==‘’ ??
在php运算中,0是整型,''是字符串;那么二者类型不一样,所以比较大小时,要先换成统一类型

基本类型相互比较时的自动转换的规则:

  • string字符串跟int整形或者float浮点型比较,字符串自动转换为int 或者float
  • bool类型跟其他类型做比较,均自动转换为bool类型然后进行比较
  • int整形跟float浮点型比较,转换为float比较

根据这个规则,我们就知道空字符串转成了0,所以二者是相等的;

三、探究 0=='all’是为什么?

上面说过,在不同类型的变量比较大小时,要换成相同的类型才能比较,那这个字符串all换成整型是多少嘞?
查看php手册,可以看到这段话:
PHP手册参考地址
在这里插入图片描述
那什么是前导数字嘞,就是字符串最开始的位置是数字,比如’11frjef78’;它转成整型就是11,
所以根据手册可知,字符串’all’转成了整数0,所以 0=='all'是成立的

四、程序中如何判断0是否等于指定字符串

那我就想判断0是否等于字符串all,这时候可以写成===,大家都知道,三个等号判断时,是需要判断类型的,就解决了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1515244.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

每天五分钟计算机视觉:如何构造分类定位任务的算法模型?

本文重点 本节课程我们将学习分类定位的问题,也就是说不仅要完成图片分类任务,然后还要完成定位任务。如下所示,我们不仅要用算法判断图片中是不是一辆车,还要在图片中标记出它的位置,用边框对象圈起来,这就是分类定位问题。 一般可能会有一张图片对应多个对象,本节课我…

你《时间贫困》么?

今天我要为大家分享的书叫《时间贫困》 这本书出版于2023年12月 “时间贫困”这个名字是什么意思呢? 它指的是一种没有自己的时间的感受 这种感受我相信大家都不陌生 现代人早晨被闹钟叫醒后就忙着洗漱、吃早饭、上班 下班后经过漫长的通勤回到家 可能还要处理各种琐…

Mysql 死锁案例4-delete 相邻记录导致死锁

死锁复现 CREATE TABLE t (id int(11) NOT NULL,c int(11) DEFAULT NULL,d int(11) DEFAULT NULL,PRIMARY KEY (id),KEY c (c) ) ENGINEInnoDB DEFAULT CHARSETutf8;/*Data for the table t */insert into t(id,c,d) values (0,0,0),(5,5,5),(10,10,10),(15,15,15) 事务1事…

数据结构入门篇 之 【双链表】的实现讲解(附完整实现代码及顺序表与线性表的优缺点对比)

一日读书一日功,一日不读十日空 书中自有颜如玉,书中自有黄金屋 一、双链表 1、双链表的结构 2、双链表的实现 1)、双向链表中节点的结构定义 2)、初始化函数 LTInit 3)、尾插函数 LTPushBack 4)、头…

04_拖动文件渲染在页面中

新建一个文件夹,跟之前一样,在 Vscode 终端里输入 yarn create electron-app Drag。 在 index.html 添加以下代码,JS 文件夹和 render.js 都是新创建的: 首先,css 文件一般和 html 结合使用,相当于 html 是…

SQL-Labs靶场“32-33”关通关教程

君衍. 一、32关 GET单引号闭合宽字节注入1、源码分析2、宽字节注入原理3、联合查询注入4、updatexml报错注入5、floor报错注入 二、33关 GET单引号addslashes逃逸注入1、源码分析2、联合查询注入3、updatexml报错注入4、floor报错注入 一、32关 GET单引号闭合宽字节注入 请求方…

yolov5-模型蒸馏算法

一般来说模型剪枝之后精度都会下降,微调之后会恢复一部分,但仍然达不到剪枝前的精度,因此蒸馏会在微调阶段配合使用 蒸馏是一种基于“教师-学生网络”的训练方法,教师模型参数量较大,效果更好,学生模型参数量较少,效果较差,蒸馏即让小模型学习大模型的知识,提升小模型…

ADO .Net操作SQL Server数据库

//ADO.NET是.NET Framework提供的数据访问服务的类库,应用程序可以使用ADO.NET连接到这些数据源,并检索、处理和更新数据 //常用的数据源包括四种:(1)Microsoft SQL Server数据源:使用System.Data.SqlClien…

力扣27. 移除元素

思路:数组的空间是连续的,没办法删除,所以只能是覆盖; 把有用的元素排上来之后,剩下的空间放什么元素可以直接忽视,然 后我们只需要返回新数组中长度即可; 快慢指针法:我们需要新建两…

数据仓库的基本概念、基本特征、体系结构

个人看书学习心得及日常复习思考记录,个人随笔。 数据仓库的基本概念、基本特征 数据仓库的定义:数据仓库是一个面向主题的、集成的、不可更新的、随时间不断变化的数据集合,用以更好地支持企业或组织的决策分析处理。 数据仓库中数据的4个…

[LeetCode][LCR169]招式拆解 II——巧妙利用字母的固定顺序实现查找复杂度为O(1)的哈希表

题目 LCR 169. 招式拆解 II 某套连招动作记作仅由小写字母组成的序列 arr,其中 arr[i] 第 i 个招式的名字。请返回第一个只出现一次的招式名称,如不存在请返回空格。 示例 1: 输入:arr "abbccdeff" 输出:a…

基于SSM的协同过滤算法的电影推荐系统(有报告)。Javaee项目。ssm项目。

演示视频: 基于SSM的协同过滤算法的电影推荐系统(有报告)。Javaee项目。ssm项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构,通…

LDA主题模型学习笔记

(1)LDA的基本介绍(wiki) LDA是一种典型的词袋模型,即它认为一篇文档是由一组词构成的一个集合,词与词之间没有顺序以及先后的关系。一篇文档可以包含多个主题,文档中每一个词都由其中的一个主题…

软考高级:信息系统开发方法2(形式化方法、统计过程方法等)概念和例题

作者:明明如月学长, CSDN 博客专家,大厂高级 Java 工程师,《性能优化方法论》作者、《解锁大厂思维:剖析《阿里巴巴Java开发手册》》、《再学经典:《Effective Java》独家解析》专栏作者。 热门文章推荐&am…

前端学习笔记 | WebAPIs(DOM+BOM)

一、作用和分类 1、基本概念 作用:使用JS去操作HTML和浏览器 分类:DOM(文档对象模型)和BOM(浏览器对象模型) html的标签JS的DOM对象 2、获取DOM对象-参数必须加引号 (1)选择匹配的第…

计算机三级错题整理

计算机三级整理 注意事项 第二道大题1.(第二套)2.(第四套真题)3.三十一套 第三道大题1.(第一套真题)2.(第二份真题)3.(第四套真题)4.二十九套5.三十套6.三十三…

《智能便利,畅享便利柜平台的架构奇妙之旅》

便利柜平台作为一种智能化、便捷的自助服务解决方案,正在逐渐走进人们的生活。本篇博客将深入探讨便利柜平台的架构设计理念、优势和实践,帮助读者了解如何构建智能便利柜平台,提供更便捷的自助服务体验。 ### 便利柜平台架构设计 #### 1. …

UE4案例记录

UE4案例记录(制作3D角色显示在UI中) 制作3D角色显示在UI中 转载自youtube视频 https://www.youtube.com/channel/UCC8f6SxKJElVvaRb7nF4Axg 新建项目 创建一个Actor 场景组件->摄像机组件->场景捕获组件2D,之后添加一个骨骼网格体…

Python基础课堂最后一课23——正则对象

文章目录 前言一、正则对象是什么?二、正则表达式基本分类1.普通字符2.元字符 总结 前言 很开心能和你们一些学习进步,在这一个多月的时间中,是你们让我坚持了下来,完成了python基础课堂编写,不管如何,我们…

ubuntu 23.04 安装 中文输入法

1、安装 fcitx sudo apt install fcitxfcitx 安装好后,可以使用 fcitx-configtool 命令进行配置,其界面如下所示。在这里可以配置不同输入法的切换快捷键,默认输入法等。刚安装系统后,这里只有一个输入法,所以接下来要…