Задать вопрос
@harts_1493

Как вычислить результат математических операций в строке?

Есть ли готовая библиотека для решения данной задачи?
Например:
$t = '5 + ( 10 - 2 ) ^ 2 % 10 * 2';
$t = math($t);
echo $t; //13

Обязательно с поддержкой арифметических операторов:
+ - * / ^ ( ) %
  • Вопрос задан
  • 289 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 2
ipatiev
@ipatiev Куратор тега PHP
Потомок старинного рода Ипатьевых-Колотитьевых
Есть ли готовая библиотека для решение данной задачи?

Вагон
и маленькая тележка
Ответ написан
@harts_1493 Автор вопроса
Из всего предложенного, для моей задачи подошла библиотека:
oat-sa/lib-beeme
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
delphinpro
@delphinpro Куратор тега PHP
frontend developer
Держите функцию. От сердца отрываю.

function math($expression) {
    $expression = str_replace('^', '**', $expression);
    return eval("return $expression;");
}

$t = '5 + ( 10 - 2 ) ^ 2 % 10 * 2';
$t = math($t);
echo $t;
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы