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

yipeiwu_com5年前PHP代码库

有时候我们对每一种产品都有一个提成公式,而这个计算提成的公式是以字符串格式存在表中的当我们用这个计算公式时,他并不像我们写的:$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函数

相关文章

ajax+php打造进度条 readyState各状态

用Ajax+php打造进度条,其实很简单。 readyState == 状态(0,1,2,3,4) 0:请求未初始化,还没调用open 1:请求已经建立,但还没有发送,还没调用send...

php的SimpleXML方法读写XML接口文件实例解析

在php5中读写xml文档是非常方便的,可以直接使用php的SimpleXML方法来快速解析与生成xml格式的文件,下面举例说明: 创建一个SimpleXML对象有三种方法: 1.使用n...

浅谈php的优缺点

一、优点 1. 跨平台,性能优越,跟Linux/Unix结合别跟Windows结合性能强45%,并且和很多免费的平台结合非常省钱,比如LAMP(Linux /Apache/Mysql/P...

在WordPress中实现发送http请求的相关函数解析

在 PHP 中发送 Http 请求(GET / POST)有很多的方法,比如 file_get_contents() 函数、fopen() 函数或者 cURL 扩展,但由于服务器的情况不...

详解php的socket通信

详解php的socket通信

 对 TCP/IP 、 UDP 、 Socket 编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我们的耳朵。 那什么是TCP/IP、UDP? TCP/IP(Tran...