我得到的字符串就像5 * 100/4,我需要从这里做一个数学语句......简单地说,当这是输入时,输出应该是125.有没有人知道任何简单的方法来实现这个?我试过了
$input = "5*100/4";
eval('$output = '.$input.';');
但由于某种原因这不起作用......有什么建议吗?
答案 0 :(得分:5)
试试这个:
$math = '5*100/4';
$result = eval( "return ${math};" );
printf("%s = %s\n", $math, $result);
会产生
5*100/4 = 125
注意:eval()
如果您不打算过分关注传递给它的内容,那将是危险的。
答案 1 :(得分:0)
@Michal您的示例正在我的PHP环境中运行。您确定环境中未禁用eval功能吗?请尝试检查disabled_functions
文件中的php.ini
。如果您在Web主机上运行,请尝试联系您的Web主机提供商以获取服务器PHP配置(或使用php信息)。