【发布时间】:2019-09-02 12:53:56
【问题描述】:
我的数据库中有字符串格式的公式。我只想按传递成本值计算。
$cost = 5;
$formula = '{{cost}} * 1.5 + 3';
$formula = str_replace('{{cost}}', $cost, $formula);
【问题讨论】:
-
为什么需要替换字符串??您可以通过
$formula = {{cost}}'.'* 1.5 + 3';计算 -
因为这个公式存储在我的数据库中
-
答案会因
$cost的来源而异。如果它是用户提供的输入,则需要更多的努力来评估表达式。 (虽然在这里通过类型转换加入白名单可能就足够了)。 -
@Jörg W Mittag ,yivi ,Al Foиce 我真的不明白你标记为不清楚。正如您所看到的,一位开发人员提供了完美的解决方案并且对该解决方案感到满意。你标记为不清楚的问题真的很奇怪。
标签: php operators calculation