【问题标题】:Convert string expression in operation in php [duplicate]在php中转换字符串表达式[重复]
【发布时间】:2018-08-06 16:57:26
【问题描述】:

如果我有这样的字符串

((((((4,50*0,86)*52500*1,0016)+3800)/52500)*2,2046)*1,05)

如何进行操作以获得总结果?

谢谢

【问题讨论】:

  • 在 eval 中使用用户输入时要非常小心
  • 字符串到底是什么意思?
  • @Devon 这是真的,永远不要评估用户输入,但该问题中接受的答案有一个拆分解决方案,他可以使用。
  • @Peon,该拆分解决方案仅适用于非常基本的数学表达式,而不是 OP 提供的内容,但那里还有其他尝试清理的答案。
  • 用这个解决方案解决! stackoverflow.com/a/27077376/3684020谢谢你

标签: php string int expression operation


【解决方案1】:

也许您的问题可能与calculate-math-expression-from-a-string-using-eval重复

然而

如果您需要将其存储在变量中,您可以这样做

$string='((((((4,50*0,86)*52500*1,0016)+3800)/52500)*2,2046)*1,05)';
$response=eval('return '.str_replace(',','.',$string.';'));

print($response);

输出是:

9.14027512736

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-09
    • 1970-01-01
    • 2021-07-28
    • 2019-11-24
    • 2015-04-13
    • 2020-12-22
    • 1970-01-01
    • 2022-12-02
    相关资源
    最近更新 更多