在Ubuntu Server 10.04上测试。希望它对Arch Linux也有帮助。
在PHP中使用
shell_exec函数:
它从执行的命令返回输出,如果发生错误或命令不产生任何输出,则返回NULL。
<?php $command = escapeshellcmd('/usr/custom/test.py');$output = shell_exec($command);echo $output;?>
在Python文件中
test.py,在第一行中验证以下文本:(请参见shebang解释):!/usr/bin/env python
另外,Python文件必须具有正确的特权(如果PHP脚本在浏览器或curl中运行,则对用户
www-data / apache的执行)和/或必须是“可执行的”。此外,所有进入.py文件的命令都必须具有正确的特权:
采取从PHP手册:
对于那些试图在
unix类型的平台上使用
shell_exec并且似乎无法使其正常工作的人,请快速提醒一下。PHP以系统上的Web用户身份执行(对于
Apache,通常为www),因此你需要确保Web用户对你在
shell_exec命令中尝试使用的任何文件或目录具有权限。否则,它似乎不会做任何事情。
为了使在UNIX型平台上的可执行文件:
chmod +x myscript.py
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)