Итак, вот что я делал раньше. Я перепробовал много способов это преобразовать. В основном у меня есть переменная $ mathString, и я хочу, чтобы она взяла эту строку и вычислила строку. Еще раз спасибо за помощь.
$mathString = "(((62.00*(((30.00/2)*(30.00/2))*ACOS(((30.00/2)-((((415.2/+1.08)/100)*14.46)+6.00))/(30.00/2))-((30.00/2)-((((415.2/+1.08)/100)*14.46)+6.00))*(SQRT((2*(30.00/2)*((((415.2/+1.08)/100)*14.46)+6.00))-(((((415.2/+1.08)/100)*14.46)+6.00)*((((415.2/+1.08)/100)*14.46)+6.00))))))*7.48)/1728)(((62.00*(((30.00/2)*(30.00/2))*ACOS(((30.00/2)-((((415.2/+1.08)/100)*14.46)+6.00))/(30.00/2))-((30.00/2)-((((415.2/+1.08)/100)*14.46)+6.00))*(SQRT((2*(30.00/2)*((((415.2/+1.08)/100)*14.46)+6.00))-(((((415.2/+1.08)/100)*14.46)+6.00)*((((415.2/+1.08)/100)*14.46)+6.00))))))*7.48)/1728)";
$compute = create_function("", "return (" . $mathString . ");" );
return 0 + $callback();
Я пытался
$callback = function() use ($mathString)
{
//return "(" . $mathString . ");";
//echo $mathString."<br /><br />";
eval('return ('.$mathString.');');
};
return 0 + $callback();
Но я получаю сообщение: Имя функции должно быть строкой eval () d код
Есть ли способ сделать это без eval?