Имею спарсенную строку с заменой символов и прочей предисторией: $str="(5739^5739)"; Нужно ее "решить".. Сначала подумал eval(); но он не проканает Прошу помощи.
eval('$a=5739*5739;'); ^ - не умножение а битовая операция - исключающее или в целом, если даётся образцовая строка $str="5739^5739";, то перемножить можно так: $b=explode('^',$str); $a=intval($b[0])*intval($b[1]);
Обработайте строку прежде чем считать. Замените неподходящие символы на "правильные" */+-% - умножение, деление, сложение, вычитание, деление по модулю. PHP: <?php $var = '2+2^2'; $var = str_replace('^','*',$var); eval('$res = '.$var.';'); echo $res; ?>