我正在尝试使用shell_exec()从PHP调用Python脚本。但是,当我通过PHP调用Windows终端时,在Windows终端中无法正常工作。
我的call.php:
echo shell_exec("python C:\Desktop\a.py");
我的a.py:
import cv2
print("Hello")
在此示例中,当我通过CMD运行时看到Hello,但是当我通过PHP调用它时却没有得到相同的响应。任何帮助或建议,将不胜感激。
答案 0 :(得分:0)
我找到了答案。当使用Windows for PHP时,“ \”反斜杠被接受为转义。因此,要克服此问题,请在路径中使用“ /”。
答案 1 :(得分:-1)
尝试
exec('python C:\Desktop\a.py');
shell_exec()
函数是PHP中的一个内置函数,用于通过shell执行命令并以字符串形式返回完整的输出。 shell_exec
是反引号运算符的别名,也是用于*nix
的别名的别名。如果命令未能返回NULL并且值对于错误检查不可靠。
exec()
函数是PHP中的内置函数,用于执行外部程序并返回输出的最后一行。如果没有命令正确运行,它也会返回NULL。
我只是认为shell_exec
无法运行,所以建议使用其他命令。
我已经测试了两个命令都可以正常工作。只是问题可能出在文件的路径或权限之外。