我正在尝试根据数组的值创建计算 - 想象一下以下数组:
$values = array(9, +, 10, *, 7)
我想到了以下方法:
$result = number_format(implode(' ', $values), 2)
但这显然不起作用。
知道如何实现这一目标?
答案 0 :(得分:2)
您可以使用eval()
...
eval('$result = ' . implode($values) . ';');
如果此数组的任何部分来自用户输入,则应过滤数组以确保其仅包含数字和有效运算符。
$safeValues = array_filter($values, function($value) {
return is_numeric($value) OR in_array($value, array('+', '-', '/', '*'));
});