0

我正在开发使用 purify-css 的项目

 https://github.com/purifycss/purifycss

我已经用 npm 在服务器上安装了 purify-css,现在我想通过 PHP 执行下面显示的命令,我正在使用 exec() 方法。

   purifycss css/final_css.css test1.html --min --out bootstrap-purify-1.css --info --rejected

但是命令不起作用。如果我直接在终端中使用相同的命令,那么它工作正常。所有其他命令,如“mkdir”和所有其他命令都工作正常,但 PHP exec() 函数中的这个命令不起作用。我不知道为什么?提前致谢。指出你是否注意到了什么。

4

1 回答 1

1

这取决于您从中运行该命令的目录。如果你在php中调用exec或其他函数来执行一个linux命令,它将在php文件所在的目录中运行。您可以执行pwd命令以查看您的命令在哪个目录中运行,如果不是项目的根目录,您可以更改它

exec('cd /path/to/dir && purifycss ...');

我还建议您使用此工具https://symfony.com/doc/current/components/process.html ,该工具经过测试并涵盖了比 exec 功能更多的用例。

最后,我强烈建议创建一个 gulp 命令并从终端执行该命令。或者你可以使用 webpack 或 grunt 如果你更熟悉这些。我没有找到 php 应用程序应该知道如何生成它自己的样式和 js 文件的用例。这是部署脚本的工作。

于 2017-11-11T08:20:19.077 回答