如何使用exec()在PHP中执行随npm命令安装的命令?

时间:2018-08-24 12:38:02

标签: php node.js npm

在Ubuntu上运行的PHP中,我可以运行exec('npm -v'),并且输出很好, 但我无法运行exec('gitbook xxxx')

gitbook是我通过

安装的npm软件包
npm install gitbook -g

我可以在Ubuntu终端中运行gitbook xxxx,如何从我的PHP代码中运行它?

2 个答案:

答案 0 :(得分:0)

我曾经在基于UNIX的操作系统上这样尝试过一次:

您可以通过exec()函数运行shell命令:

//制作一个php文件来执行shell脚本

exec("node yourscript.js &", $output);

好的输出在这里成为每行输出以及进程ID的数组。您也可以通过processid杀死进程。

exec("kill " . $processid);

这是我的工作方式。除此之外,您可以使用节点管理器。希望对您有帮助。还可以尝试使用node命令。

答案 1 :(得分:0)

如果您是通过nginx或apache运行php(例如,访问url example.com/index.php),则有时需要导出 PATH

exec("export PATH=/usr/local/bin && gitbook build);

添加导出路径后,一切正常。