不允许操作

用户1995

我在OS X上,正在尝试为解释器编写接口,与解释器的通信在PHP中如下所示:

$f = fopen('mmascript.m', 'w');
fwrite($f, "#!/Applications/mma/Contents/MacOS/MathematicaScript -script\n");
fwrite($f, 'Print[100]');
fclose($f);
chmod('mmascript.m', 0777);
passthru('mmascript.m', $error);
echo $error;

它显示错误127,“找不到命令”。如果我进入该文件夹并尝试运行该文件,则会收到错误消息

口译不好:不允许操作

如果我将其复制到另一个文件夹fe中cp ./mmascript.m ~/Desktop/mmascript.m,它最初可能会出现相同的问题,但随后将神奇地开始工作。由于到解释器的路径是绝对的,因此这意味着该路径是正确的。有任何想法吗?

eyoung100

让我们添加一些调试信息,如下所示:

$f = fopen('mmascript.m', 'w');
echo "fopen complete."
fwrite($f, "#!/Applications/mma/Contents/MacOS/MathematicaScript -script\n");
echo "fwrite 1 complete."
fwrite($f, 'Print[100]');
echo "fwrite 2 complete.
fclose($f);
echo "close complete."
chmod('mmascript.m', 0777);
echo "Permissions Successfully Changed."
passthru('mmascript.m', $error);
echo "Passthru Complete."
echo $error;

我的直觉是passthru不会回显,因为passthru需要一个命令,后跟您的文件名。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章