(在OSX上执行此操作,如果偏离主题则道歉)
当我运行代码行
时shell_exec("/usr/local/bin/gnuplot gnuplot_script7");
在php脚本中,生成一个名为gnuplot_output7.png的文件,如预期的那样。但是当我运行类似的代码行时
shell_exec("gnuplot gnuplot_script7");
没有生成图像!尽管如此我输入
gnuplot gnuplot_script7
在OSX命令行上,图像已成功生成。
我输入 - 在命令行上回显$ PATH并返回
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Library/PostgreSQL/8.4/bin/:/usr/local/git/bin:/usr/X11/bin
当我输入
which gnuplot
在命令行上我回来了
/usr/local/bin/gnuplot
答案 0 :(得分:1)
您的用户$PATH
与用户php正在运行时相同。
<强>解决方案强>
1-在您的用户下运行php
(可能不安全),您可以使用:
shell_exec("gnuplot gnuplot_script7");
2 - 只需使用full path
:
shell_exec("/usr/local/bin/gnuplot gnuplot_script7");