PHP: Calculate a math function f(x) in a string

2020-02-02 02:03发布

问题:

Is it possible to calculate a math function f(x) that in a string. Something like this:

$function = '2x+3';
$x = 4;
math_function($function, $x); //Shoud produce 11

I can't find a library for tasks like this on PHP.net or with Google, but I don't think I am the first one that wants this?

回答1:

My standard answer to this question whenever it crops up:

Don't use eval (especially if the formula contains user input) or reinvent the wheel by writing your own formula parser.

Take a look at the evalMath class on PHPClasses. It should do everything that you want in a nice safe sandbox.