编程语言
首页 > 编程语言> > 如何从PHP脚本运行grunt?

如何从PHP脚本运行grunt?

作者:互联网

我正在尝试从PHP脚本在本地项目中执行grunt.

我在全球安装了npm和grunt cli.

如果我打开终端并输入:

cd /path/to/local/grunt/project/ && grunt

Grunt将成功运行并执行我在该目录下的gruntfile.js中设置的任务.

但是,当我尝试通过php脚本对exec执行相同的操作时

var_dump(shell_exec('cd /path/to/local/grunt/project/ && grunt 2>&1'));

我得到:

sh: grunt: command not found

我还尝试了通向全局CLI的直接路径:

var_dump(shell_exec('/usr/local/lib/node_modules/grunt-cli/bin/grunt 2>&1'));

但是我得到:

env: node: No such file or directory

但是,这可以从终端正常运行.

这里发生了什么?当我尝试通过php运行grunt命令时,为什么找不到它?如何从php脚本中执行exec或exec grunt?

解决方法:

您需要使用指向节点和咕unt声的绝对路径,所以要像这样执行命令

var_dump(shell_exec('cd /path/to/local/grunt/project/ && /usr/local/bin/node /usr/local/bin/grunt 2>&1'));

标签:node-js,gruntjs,php
来源: https://codeday.me/bug/20191029/1958134.html