Я хочу опубликовать термин как
5+(x+4)
из PHP через Python в Sympy, чтобы упростить выражение.
Для этого я использую следующий код:
PHP:
$param="5+(x+4)";
$command="python $PathToPySkript $param"; //# '$param2' '$param3'";
$buffer='';
ob_start(); // prevent outputting till you are done
passthru($command);
$buffer=ob_get_contents();
ob_end_clean();
PY:
import sys
from sympy import *
from sympy.parsing.sympy_parser import *
from sympy.solvers import solve
from sympy import Symbol
x = Symbol('x')
transformations=(standard_transformations + (implicit_multiplication_application,) + (function_exponentiation,)+(convert_xor,))
print(latex(parse_expr(sys.argv[1], transformations=transformations)))
Я могу разместить такие термины, как
5+x+4
без проблем, найдите решение и покажите его на моем сайте.
Но для любого термина с такими скобками, как (или {или [, обработка выдает ошибки, иначе я бы не получил уведомления в PHP).
Я пытался также удвоить скобки, как ((или {{или [[но это не будет иметь никакого эффекта.
Кто-нибудь знает, как получить решение для моей проблемы.
Хорошо, я нашел решение для себя!
Проблема заключалась в том, что я установил строку следующим образом:
PHP:
$param="5+(x+4)";
Я изменил это на:
$param="'5+(x+4)'";
Теперь все работает как положено …
Других решений пока нет …