从php脚本执行多个sage命令

时间:2014-04-26 14:41:43

标签: php latex sage

我在我的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终端一切都很好..
所有的帮助将不胜感激..

1 个答案:

答案 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];