经过大量的操作后,我得到了一些类似的信息:
$exr = "2+3/1.5";
如何获得该表达式的结果?像这样:
$result = (floatval)$exr; // show: 4
当然不行了。我只有2个,第一个符号。
任何简单的方法来解决这个问题?
最佳答案
您可以像这样使用PHP eval
函数:
$exr = '2+3/1.5';
eval('$result = ' . $exr . ';');
var_dump($result);
// float(4)
请仔细阅读此说明:
警告:eval()语言构造非常危险,因为它允许
执行任意PHP代码。因此不鼓励使用它。如果你
经过仔细验证,除了使用此功能外,没有其他选择
构造时,要特别注意不要传递任何用户提供的数据
事先未正确验证它。