我在我的ubuntu服务器上安装了Sage数学。我可以通过ssh终端运行sage命令,例如
$sage:
$sage: f = x^2
$sage: f.diff(x)
我想在php脚本上做
exec('sage');
exec('sage: f = 5x^3');
$fprime = exec('sage: latex(f.diff(x))');
echo $fprime;
我希望" 15x ^ 2"作为输出,但没有发生..然而在ssh终端一切都很好..
所有的帮助将不胜感激..
答案 0 :(得分:1)
我不完全确定你想要达到的目标。 PHP的exec
函数执行shell命令,就是这样。阅读http://fr2.php.net/manual/en/function.exec.php。
sage: f = 5*x^3
不是shell命令。您可以使用-c
开关直接通过命令行运行sage脚本:
./sage -c 'print latex((5*x^3).diff())'
将15 \, x^{2}
打印到终端。在PHP中,您可以通过将第二个参数传递给exec
来获取此输出:
exec("./sage -c 'print latex((5*x^3).diff())'", $output);
echo $output[0];