php中通过eval实现字符串格式的计算公式


Posted in PHP onMarch 18, 2017

有时候我们对每一种产品都有一个提成公式,而这个计算提成的公式是以字符串格式存在表中的当我们用这个计算公式时,他并不像我们写的:$a=2+3*5;这样简单的能计算出结果,而它是个字符串.所以,我们就必须把字符串转化为我们能够处理的结果
而php中的eval()函数可以处理php代码,因此可以用此来解决:以字符串格式存储的计算公式

比如:

$str='2*(3+12)';
$result=eval("return $str;");
echo $result;

会输出:30

是表达式的值

其中eval()中的return $str;就是php代码

当然也可以带入变量的值:

$a=3;
$b=12;
$str='2*($a+$b)';
$result=eval("return $str;");
echo $result;

会输出:30

这样就实现了php实现计算器的代码了,主要是使用php的eval函数。

PHP 相关文章推荐
实现dedecms全站URL静态化改造的代码
Mar 29 PHP
php文档更新介绍
Jul 22 PHP
php简单的会话类代码
Aug 08 PHP
php 多关键字 高亮显示实现代码
Apr 23 PHP
php创建基本身份认证站点的方法详解
Jun 08 PHP
php中异常处理方法小结
Jan 09 PHP
php命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法
May 25 PHP
PHP编写daemon process 实例详解
Nov 13 PHP
PHP删除数组中指定下标的元素方法
Feb 03 PHP
PHP数组遍历的几种常见方式总结
Feb 15 PHP
PHP设计模式(七)组合模式Composite实例详解【结构型】
May 02 PHP
让你的PHP,APACHE,NGINX支持大文件上传
Mar 09 PHP
CodeIgniter框架验证码类库文件与用法示例
Mar 18 #PHP
YII框架批量插入数据的方法
Mar 18 #PHP
thinkPHP5.0框架URL访问方法详解
Mar 18 #PHP
thinkPHP5.0框架模块设计详解
Mar 18 #PHP
thinkPHP5.0框架命名空间详解
Mar 18 #PHP
thinkPHP5.0框架自动加载机制分析
Mar 18 #PHP
thinkPHP5.0框架引入Traits功能实例分析
Mar 18 #PHP
You might like
实用PHP会员权限控制实现原理分析
2011/05/29 PHP
第4章 数据处理-php数组的处理-郑阿奇
2011/07/04 PHP
php 变量引用与变量销毁机制详细介绍
2016/12/05 PHP
php实现评论回复删除功能
2017/05/23 PHP
比较详细的关于javascript 解析json的代码
2009/12/16 Javascript
C#中TrimStart,TrimEnd,Trim在javascript上的实现
2011/01/17 Javascript
firefox下jquery iframe刷新页面提示会导致重复之前动作
2012/12/17 Javascript
jquery 追加tr和删除tr示例代码
2013/09/12 Javascript
Javascript浅谈之引用类型
2013/12/18 Javascript
js判断undefined类型示例代码
2014/02/10 Javascript
js 事件截取enter按键页面提交事件示例代码
2014/03/04 Javascript
JS中Eval解析JSON字符串的一个小问题
2016/02/21 Javascript
jQuery UI Bootstrap是什么?
2016/06/17 Javascript
jQuery中的insertBefore(),insertAfter(),after(),before()区别介绍
2016/09/01 Javascript
vue2.0构建单页应用最佳实战
2017/04/01 Javascript
基于JavaScript实现淘宝商品广告效果
2017/08/10 Javascript
AngularJS中controller控制器继承的使用方法
2017/11/03 Javascript
jQuery替换节点元素的操作方法
2018/03/18 jQuery
使用 node.js 模仿 Apache 小部分功能
2019/07/07 Javascript
vue实现多组关键词对应高亮显示功能
2019/07/25 Javascript
vue仿淘宝滑动验证码功能(样式模仿)
2019/12/10 Javascript
原生js无缝轮播插件使用详解
2020/03/09 Javascript
[56:21]LGD vs IG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
利用Python中的输入和输出功能进行读取和写入的教程
2015/04/14 Python
python3.5绘制随机漫步图
2018/08/27 Python
python查找重复图片并删除(图片去重)
2019/07/16 Python
python安装gdal的两种方法
2019/10/29 Python
flask 实现上传图片并缩放作为头像的例子
2020/01/09 Python
Python 实现自动登录+点击+滑动验证功能
2020/06/10 Python
浅谈利用缓存来优化HTML5 Canvas程序的性能
2015/05/12 HTML / CSS
2014年信用社工作总结
2014/11/25 职场文书
给老师的感谢信
2015/01/20 职场文书
《比的意义》教学反思
2016/02/18 职场文书
python基础学习之递归函数知识总结
2021/05/26 Python
Spring Boot DevTools 全局配置学习指南
2022/03/31 Java/Android
数据设计之权限的实现
2022/08/05 MySQL