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 相关文章推荐
PHP学习之PHP运算符
Oct 09 PHP
PHP生成静态页面详解
Nov 19 PHP
PHP 生成的XML以FLASH获取为乱码终极解决
Aug 07 PHP
php checkdate、getdate等日期时间函数操作详解
Mar 11 PHP
ionCube 一款类似zend的PHP加密/解密工具
Jul 25 PHP
用php实现百度网盘图片直链的代码分享
Nov 01 PHP
基于simple_html_dom的使用小结
Jul 01 PHP
php中strtotime函数用法详解
Nov 15 PHP
php实现的农历算法实例
Aug 11 PHP
一个简单安全的PHP验证码类、PHP验证码
Sep 24 PHP
在laravel中使用Symfony的Crawler组件分析HTML
Jun 19 PHP
laravel框架语言包拓展实现方法分析
Nov 22 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
PHPMailer邮件类利用smtp.163.com发送邮件方法
2008/09/11 PHP
PHP数组实例总结与说明
2011/08/23 PHP
php多任务程序实例解析
2014/07/19 PHP
Yii模型操作之criteria查找数据库的方法
2016/07/15 PHP
比较完整的微信开发php代码
2016/08/02 PHP
PHP实现websocket通信的方法示例
2018/08/28 PHP
JS宝典学习笔记(下)
2007/01/10 Javascript
javascript 限制输入和粘贴(IE,firefox测试通过)
2008/11/14 Javascript
js跟随滚动条滚动浮动代码
2009/12/31 Javascript
jQuery开发者都需要知道的5个小技巧
2010/01/08 Javascript
jquery队列queue与原生模仿其实现方法分享
2014/03/25 Javascript
jQuery scroll事件实现监控滚动条分页示例
2014/04/04 Javascript
JavaScript 基本概念
2015/01/20 Javascript
JavaScript获取css行间样式,内连样式和外链样式的简单方法
2016/07/18 Javascript
javascript构造函数以及原型对象的理解
2017/01/13 Javascript
详解windows下vue-cli及webpack 构建网站(三)使用组件
2017/06/17 Javascript
Vue应用部署到服务器的正确方式
2017/07/15 Javascript
javascript实现Java中的Map对象功能的实例详解
2017/08/21 Javascript
解决angular双向绑定无效果,ng-model不能正常显示的问题
2018/10/02 Javascript
layui多iframe页面控制定时器运行的方法
2019/09/05 Javascript
[59:32]Liquid vs Fnatic 2019国际邀请赛淘汰赛败者组BO1 8.20.mp4
2020/07/19 DOTA
python进阶教程之模块(module)介绍
2014/08/30 Python
Python操作串口的方法
2015/06/17 Python
Python获取当前页面内所有链接的四种方法对比分析
2017/08/19 Python
django 通过ajax完成邮箱用户注册、激活账号的方法
2018/04/17 Python
Python使用sort和class实现的多级排序功能示例
2018/08/15 Python
python实现根据指定字符截取对应的行的内容方法
2018/10/23 Python
python使用xlsxwriter实现有向无环图到Excel的转换
2018/12/12 Python
HTML5中meta属性的使用方法
2016/02/29 HTML / CSS
夏洛特和乔治婴儿和儿童时装精品店:Charlotte and George
2018/06/06 全球购物
介绍一下Mysql的存储引擎
2015/02/12 面试题
测绘专业大学生职业生涯规划书
2014/02/10 职场文书
应聘文员自荐信范文
2014/03/11 职场文书
综合素质评价个性发展自我评价
2015/03/06 职场文书
Nginx的rewrite模块详解
2021/03/31 Servers
Java 在生活中的 10 大应用
2021/11/02 Java/Android