我相信这就是您想要的:

class Expression {

protected $expression;

protected $result;

public function __construct($expression) {

$this->expression = $expression;

}

public function evaluate() {

$this->result = eval("return ".$this->expression.";");

return $this;

}

public function getResult() {

return $this->result;

}

}

class NegativeFinder {

protected $expressionObj;

public function __construct(Expression $expressionObj) {

$this->expressionObj = $expressionObj;

}

public function isItNegative() {

$result = $this->expressionObj->evaluate()->getResult();

if($this->hasMinusSign($result)) {

return true;

} else {

return false;

}

}

protected function hasMinusSign($value) {

return (substr(strval($value), 0, 1) == "-");

}

}

用法:

$soldPrice = 1;

$boughtPrice = 2;

$negativeFinderObj = new NegativeFinder(new Expression("$soldPrice - $boughtPrice"));

echo ($negativeFinderObj->isItNegative()) ? "It is negative!" : "It is not negative :(";

但是请注意eval是一个危险函数,因此仅在确实需要确定数字是否为负数时才使用它。

:-)

php 判断非负整数,PHP-检测负数相关推荐

  1. dlib做人脸检测判断有没有检测到人脸

    dlib做人脸检测判断有没有检测到人脸 文章目录: 一.人脸检测 二.判断有没有检测到人脸 其实我用dlib 检测人脸只是用来做个触发条件,但是我不知道怎么判断有没有检测到人,因为从返回值只知道是一个 ...

  2. js正则检测输入内容为数字,包括负数,整数,浮点数,亲测可用.JS检测整数,js检测浮点数,js检测负数,js检测数字,js限制输入框只输入数字,解决H5 number类型只能输入正数问题.

    JS 正则实现数字检测和限制输入,包括整数.浮点数.负数(亲测可用) 网上搜了一下,居然可以直接拿来用的很少,要么就是只能检测正整数.要么是只能检测浮点数,总之很多都不适合,而H5提供的type=&q ...

  3. 前端实用小工具(URL参数截取、JSON判断、数据类型检测、版本号对比等)

    背景 在日常开发中,我们经常会用一些工具类方法来实现业务逻辑 下面列举几种最常用的 URL截取参数 //直接调用输入想要截取的参数名称几个 export function getParamFromUr ...

  4. 关于充电桩绝缘检测中判断标准以及检测电压的选取

    参照GBT 18487.1-2015 附录B.4.1中说明: "充电直流回路DC+.PE之间的绝缘电阻,与DC-.PE之间的绝缘电阻(两者取小值R),当R>500Ω/V视为安全:100 ...

  5. MATLAB中判断矩阵是否存在负数及负数的个数

    假设存在一个矩阵Z=[1,2,3;-2,1,4;-4,3,-2]. 判断方法:X=sum(sum(Z<0)),所得的X值即为负数的个数. 原理解释: 1.Z<0:表示将Z中的各个元素与0相 ...

  6. 关于html5支持与否的判断(JS检测是否支持HTML5新特性)

    未来使用H5的场景会越来越多,这是令 web开发者欢欣鼓舞的事情.然而有一个现实我们不得不看清,那就是IE系列浏览器还占有一大部分市场份额,以IE8.9为主,windows8.1的用户已经用上了IE1 ...

  7. php判断base64编码,检测PHP中的base64编码?

    要检测PHP中的base64编码,代码如下- 示例<?php $value_1 = array(); foreach (str_split('az019AZ~~~!@#$%^*()_+|}?&g ...

  8. 判断非负整数是否是3的倍数_六年级小升初数学总复习专题(2-1)因数与倍数...

    同学们好经过前两个章节的专题学习我们已经掌握了整数的认识部分,接下去我们要开始研究整数与整数之间的关系,首先我们要学习的是因数与倍数,因数与倍数就像两个好朋友一样,每天玩耍在一起,有因数在 的时候就有 ...

  9. 判断非负整数是否是3的倍数_二、因数与倍数教案

    二.因数与倍数 第1课时 因数和倍数(1) [教学内容] 教材第5页例1 [教材分析] 这节课首先利用整数除法中,根据商的不同情况把整数除法分成两类,其中通过整数除法中商是整数且没有余数这样的算式,直 ...

  10. 判断非负整数是否是3的倍数_五年级数学因数与倍数知识点汇总与解题方法技巧...

    在日常教学过程中,我发现孩子们和某些家长对学习数学的方法有一些误区,就是觉着数学,单纯就是逻辑思维,只要多做练习题就能学好,但是不是这样的,低年级的学生,学习数学还是以背诵为主,练习与背诵同步才行,像 ...

最新文章

  1. 服务器处理 json 数据
  2. python 局域网通讯_python3 实现tcp/udp局域网通信
  3. 2021年春季学期-信号与系统-第七次作业参考答案-第二小题
  4. CSU - 2059 Water Problem(Z线分割平面)
  5. 在java中 int类型对应的包装类是_Java SE-基本数据类型对应包装类
  6. 第一类Stirling数和第二类Stirling
  7. Java中的Enum(枚举)用法介绍
  8. day30 java的IO流(3)
  9. Centos 7 更改系统语言为中文
  10. 怎样覆盖之前的html文档,jquery – html文本覆盖自己
  11. python爬虫总结之xpath元素定位
  12. 总结tomcat优化方法
  13. STM32课设-智能物联网家居系统(UCOSIII+STEMWIN)
  14. Gtest:死亡测试
  15. 关于出现Merge remote-tracking branch ‘origin/develop‘ into develop这种commit记录的原因
  16. delphi 调用 腾讯云短信
  17. Java多线程案例之线程池
  18. ubuntu系统下破解Clion
  19. mysql数据库备份与导入
  20. 虚拟机服务器双通道和四通道,双通道和四通道区别

热门文章

  1. Word排版(小计)
  2. Hyper-V安裝筆記
  3. linux tac命令,Linux tac 命令 command not found tac 命令详解 tac 命令未找到 tac 命令安装 - CommandNotFound ⚡️ 坑否...
  4. 2021年高处安装、维护、拆除考试及高处安装、维护、拆除考试题
  5. python深浅拷贝应用_简述Python的深浅拷贝以及应用场景?
  6. python中outside loop_python - 如何解决 break outside loop? - SO中文参考 - www.soinside.com...
  7. 网站ICP备案是什么呢?
  8. [心得]怪诞心理学精华笔记
  9. Tony Bai带你入门Go语言
  10. 首款物联网防火墙himqtt开源