在PHP中使用权限的简单方法是什么?

时间:2010-09-22 19:17:27

标签: php math equations

我正在尝试制作一个脚本来帮助我掌握数学

示例等式:y=(4*(x*2)^(2x+4))+4*x^2

为了实现这一目标,我只需要了解只有(x*2)才需要(2x+4)的力量,然后再回到原来的等式中,这当然是你只需eval()一个答案。

当我知道x值时,我想计算y的值。如果不是权力,这将是相对容易的。我无法理解如何做到这一点。

我知道你可以使用pow(),但我正在尝试制作一个脚本来处理任何等式。所以需要理解语法。

有任何建议如何解决这个问题?

4 个答案:

答案 0 :(得分:3)

对于用于评估公式的本机PHP沙箱,它与Sjoerd的答案描述一样,请查看PHPClasses上的evalMath类。

答案 1 :(得分:1)

尝试实施calculator parser。 (链接的例子是C ++,但这应该给你一个想法。你可以添加解析^的功能。)

这将使您获得所需的一部分。否则,如果你的功能类型开始变得太复杂,你可能想要一个完整的符号数学包。

答案 2 :(得分:1)

此外,您绝对不应该使用eval()来允许用户评估数值表达式。这是一场等待发生的灾难。

答案 3 :(得分:1)

我曾经做过calculator script

  • 它解析计算并将每个数字和运算符放在一个堆栈中,reverse polish notation
  • 它通过执行堆栈上的所有操作来计算结果。