PHP中的飞碟运算符、取反运算符、对比非ASCII字符串、对比浮点数操作

news2024/11/6 10:00:18

 对比浮点数

  在电脑里存储的浮点数可能会和输入的值有些许差异,比如输入的是10.0,但存储的是10.00001.

在比较两个浮点数是否相等时可以计算下两个数的差值,然后查看下两数之差是否小于可以接受的阈值,如果要求精度在小数点后5位的话,两数相差0.000001也是可以接受的,在比较时不能使用相等运算符 == ,以下是使用了相等运算符和未使用相等运算符的结果对比。

<?php 

$price_1 = 50.01;
$price_1 == $price_2;

if (abs($price_1 - $price_2) < 0.000000001) {
    print '浮点数1和浮点数2相同';
} else {
    print '浮点数1和浮点数2不同';
}

<?php 

$price_1 = 50.01;
$price_2 = 50.01;

if (abs($price_1 - $price_2) < 0.000000001) {
    print '浮点数1和浮点数2相同';
} else {
    print '浮点数1和浮点数2不同';
}

 

比对使用了abs() 函数用于返回两个浮点数差值的绝对值,钱师傅的电动自行车上也装了abs.

对比非ASCII字符串

  ASCII码(美国标准信息交换码),采用7个二进制位,其中第四位是行编码,高三位是列编码,但是这里先不用它,在PHP中字符串是字节序列,PHP引擎使用字典序列来比较字符串,可以使用strcmp()函数来实现,如果第一段字符串小于第二段字符串将返回负数。

<?php

$x = strcmp("扁担长","板凳宽");
if ($x > 0) {
    print "扁担不愿绑在板凳上";
} elseif ($x < 0) {
    print "板凳不愿扁担绑在板凳上";
}

 

取反运算符

  在PHP中可以使用取反真假值,如果值是true将得到false,在赋值时决不能使用==符号。

<?php

$GGBond = true;
if (!$GGBond) {
    print "yeha!";
} else {
    print "oh yes";
}

 

飞碟运算符 

  飞碟运算符是PHP7引入的,飞船运算符 <=> 根 strcmp() 函数类似,但可以比对各种类型的数据,如果左边的数值比右边的数值大,结果为负数;左边与右边的数值一样大的话,结果为0.

<?php

$a = 1 <=> 2;
$b = "ass"  <=> "dick";
$c = "a10086" <=> "b10051";

print "ass" . $a ."we". $b ."can". $c;

 

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

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

相关文章

【Spring Boot 源码学习】深入 BootstrapContext 及其默认实现

《Spring Boot 源码学习系列》 深入 BootstrapContext 及其默认实现 一、引言二、往期内容三、主要内容3.1 BootstrapContext3.1.1 源码初识3.1.2 get 方法3.1.3 getOrElse 方法3.1.4 getOrElseSupply 方法3.1.5 getOrElseThrow 方法3.1.6 isRegistered 方法 3.2 ConfigurableB…

搜维尔科技:用于运动科学的 OptiTrack,范围标记、步态捕捉!

OptiTrack 系统提供世界领先的测量精度和简单易用的工作流程&#xff0c;为研究人员和生物力学师的研究提供理想的 3D 跟踪数据。 对所有主要数字测力台、EMG 和模拟设备的本机即插即用支持为研究人员提供了在 Visual3D、MotionMonitor、MATLAB 和其他第三方生物力学软件包中进…

leetcode有效的括号-中等

题目描述 解题思路 不要被事例骗到&#xff0c;没有事例中写的那么简单&#xff0c;其中还包括&#xff08;[ ]&#xff09;这种例子。如果是计算机本专业的同学来说&#xff0c;一眼看出来&#xff0c;需要使用栈的数据结构。在python中需要使用列表进行。如果匹配的是左括号…

这几个Python内置函数你都知道吗

divmod() divmod() 是一个 Python 内置函数&#xff0c;用于同时返回商和余数。它接受两个参数&#xff0c;第一个参数是被除数&#xff0c;第二个参数是除数&#xff0c;返回一个包含两个值的元组&#xff0c;第一个值是商&#xff0c;第二个值是余数。 示例用法如下&#…

Linux使用Docker部署Nacos容器并结合内网穿透实现公网访问本地服务

文章目录 推荐1. Docker 运行Nacos2. 本地访问Nacos3. Linux安装Cpolar4. 配置Nacos UI界面公网地址5. 远程访问 Nacos UI界面6. 固定Nacos UI界面公网地址7. 固定地址访问Plik 推荐 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff…

计算机组成原理 — 存储器(2)

高速缓冲存储器 大家好呀&#xff01;我是小笙&#xff0c;由于存储器这部分章节内容较多&#xff0c;我分成二部分进行总结&#xff0c;以下是第二部分&#xff0c;希望内容对你有所帮助&#xff01; 概述 目的&#xff1a;避免CPU空等现象 原理&#xff1a;程序访问的局部…

基于yolov2深度学习网络的火焰烟雾检测系统matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 MATLAB2022a 3.部分核心程序 .................................................................. load yolov2.mat% 加载…

【Docker】03 容器操作

文章目录 一、流转图二、基本操作2.1 查看本地容器进程2.2 启动容器2.2.1 交互式启动容器2.2.2 后台启动容器 2.3 进入容器2.4 停止启动重启容器2.5 退出容器2.6 删除容器2.7 提交容器&#xff08;打包成镜像&#xff09;2.8 拷贝文件2.8.1 拷贝容器内文件到宿主机2.8.2 拷贝宿…

机器学习理论知识学习

机器学习介绍 让机器有能力去根据数据学习 不是人类的if和else控制 机器学习分类 监督学习: 最成熟,落地案例最多。我们的视觉处理大多数都是监督学习。 小孩学习,类似监督学习,这是猫,这是狗,这是兔子 非监督学习:找到不同类型的数据,kmeans 聚类算法 帮助梳理不…

软考47-上午题-【数据库】-数据查询语言DQL2

一、聚合函数 聚合函数实现数据统计的功能&#xff0c;返回一个单一的值。聚合函数一般与select语句的group by子句一起使用。 示例&#xff1a; 二、数据分组-group by 聚合函数加上group by子句进行分组。 通常一个聚合函数的作用范围是满足where子句中指定条件的记录&…

【刷题】leetcode 1544.整理字符串

刷题 1544.整理字符串思路一&#xff08;模拟栈速解版&#xff09;思路二 &#xff08;原地算法巧解版&#xff09;思路三&#xff08;C栈版&#xff09; Thanks♪(&#xff65;ω&#xff65;)&#xff89;谢谢阅读&#xff01;&#xff01;&#xff01;下一篇文章见&#xff…

罗克韦尔AB的PLC实现ModbusTCP和ModbusRTU协议标签方式通讯

本文是通过IGT-DSER智能网关读写AB罗克韦尔Compact、Control系列PLC的标签数据缓存并转为Modbus从站协议&#xff0c;与上位机通讯的案例。 打开智能网关的参数软件(下载地址)&#xff0c;通过功能->数据转发与平台对接&#xff0c;再选择数据转发与缓存’&#xff0c;进入以…

探索Allure Report:提升自动化测试效率的秘密武器!

一.使用 Allure2 运行方式-Python # --alluredir 参数生成测试报告。 # 在测试执行期间收集结果 pytest [测试用例/模块/包] --alluredir./result/ (—alluredir这个选项 用于指定存储测试结果的路径)# 生成在线的测试报告 allure serve ./result二.使用 Allure2 运行方式-Ja…

Elasticsearch 创建index库 timeout

问题概述 使用 python 客户端 代码进行创建,【之前成功创建,但是现在出现报错,报错代码es_connection.client.indices.create】def create_vector_index(dataset_index_name,vector_query_field,query_field):es_connection = get_collention(dataset_index_name,vector_que…

Linux调用可执行程序:system()函数和execl函数

system()函数&#xff1a; system()函数是一个在C/C编程语言中的库函数&#xff0c;用于在操作系统中执行命令。 函数声明如下&#xff1a; int system(const char *command);该函数接受一个指向以空字符结尾的字符串的指针作为参数&#xff0c;该字符串包含要执行的命令。函…

福特锐界2021plus 汽车保养手册

福特锐界2021plus汽车保养手册两页&#xff0c;零部件保养要求&#xff0c;电子版放这里方便查询&#xff1a;

2024.02.23作业

1. 尝试处理普通信号 #include "test.h"#define MAXSIZE 128void handler(int signo) {if (SIGINT signo){printf("用户按下了 ctrl c 键\n");} }int main(int argc, char const *argv[]) {if (signal(SIGINT, SIG_IGN) SIG_ERR){perror("signal …

【C++】---内存管理new和delete详解

一、C/C内存分布 C/C内存被分为6个区域&#xff1a; &#xff08;1&#xff09; 内核空间&#xff1a;存放内核代码和环境变量。 &#xff08;2&#xff09;栈区&#xff1a;向下增长&#xff08;存放非静态局部变量&#xff0c;函数参数&#xff0c;返回值等等&#xff09; …

帧同步原理

帧同步和状态同步区别 状态同步&#xff1a;发操作&#xff0c;收状态 帧同步&#xff1a;发操作&#xff0c;收操作 逻辑严格排序 经常会有需要排序的列表或者数组&#xff0c;比如攻击距离自己最近的敌人&#xff0c;这时候就需要将身边的敌人进行距离排序&#xff0c;一般…

在having、select子句中使用子查询

目录 在having子句中使用子查询 统计出部门平均工资高于公司平均工资的部门编号、平均工资、部门人数 在select子句中使用子查询 查询每个员工的编号、姓名、职位、部门名称 Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645 在havin…