您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 海北分类信息网,免费分类信息发布

PHP逆波兰示意与表达式计算

2024/6/5 13:23:08发布103次查看
php逆波兰表示与表达式计算
? 说起表达式计算,想起一个笑话。我向他介绍,我们的php开发框架中有使用rpn对公式解析计算的类。于是,他笑我无知了。并且,还列出一系列的佐证,证明,在php中直接用eval函数就能解决一切问题。
也许,你会同意这位老兄的看法。不要紧。你可以看一下peer函数库。peer函数库中,也有一个rpn的类。如果你现在还认为我错了,那么,开发peer的rpn的人,一定是吃饱了撑着了,要不就是脑子短路了。
其实,事实根本不是这样。举一个最简单的例子,你本月工资的计算表达式是:21*b-c*v,其中,b是你的基本工资,c是你的假期扣薪,v是你请假的天数。我们己知:$b=200, $c=120, $v=3。
那么,你用eval计算给我看看?也许你说,js就好了,因为,js变量中无$。问题就出在这里。
解决方案不外乎是两种,一种是给表达式中的变量加上$号。另一种,则是写一个表达式解析引擎。
? 表达式的计算,有关于运算符的优先级问题,一般使用逆波兰表示法解析,也就是英文简称的rpn。我们了解,正常的数学表达式是用中缀表示法。
? 可惜的是,peer的rpn类太简陋了。无法扩展。所以,才写了一个可以扩展的类。
? 如果你有兴趣,可以下载看看:
? http://www.phpclasses.org/package/5584-php-evaluate-expressions-in-reverse-polish-notation.html
海北分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录