要在我的Mac上运行PHP的grunt命令,我可以使用putenv
告诉PHP NodeJS所在的位置以及全局PATH,这样我就可以运行grunt命令,如:
putenv('PATH=' . getenv('PATH') . ':/usr/local/bin');
exec('grunt watch');
但在Windows 7上,NodeJS位于不同的位置......
我第一次尝试:
putenv('PATH=' . getenv('PATH') . ':C:\Program Files (x86)\nodejs');
NodeJS本身就在哪里,但这不起作用......
然后尝试:
putenv('PATH=' . getenv('PATH') . ':C:\Users\cameron.drysdale\AppData\Roaming\npm');
这是npm所在的地方(我不知道为什么在Windows上它存在于exe的差异位置)。但是再次这不起作用,我得到一个错误,grunt是一个未知的命令。 grunt-cli绝对是全球安装的!
关于Windows应该是什么道路的任何想法?
答案 0 :(得分:0)
解决方案是使用两者!
$putenv = putenv('PATH=' . getenv('PATH') . ';C:\Program Files (x86)\nodejs;C:\Users\cameron.drysdale\AppData\Roaming\npm');
并使用;
代替:
作为分隔符(由Pieter Hoste评论)