使用scssphp的工作流程是什么?

shi*_*izu 4 php sass

我正在尝试将我的CSS迁移到scss以获取PHP应用程序,但我对生成css文件的正确工作流程感到困惑.我正在使用scssphp,它是用PHP编写的scss编译器.

在我的所有页面中,我使用以下样式表:css/mycss.css.我把scss样式表的版本放入了css/scss/mycss.scss.当我对scss文件进行更改时,我通过进入我的浏览器在本地编译它:

localhost/mywebsite/style.php/mycss.scss
Run Code Online (Sandbox Code Playgroud)

style.php文件如下:

require "vendor/leafo/scssphp/scss.inc.php";
$scss = new scssc();
$directory = "css/scss";
$server = new scss_server($directory,null,$scss);
$server->serve();
Run Code Online (Sandbox Code Playgroud)

这将编译scss文件并将其写入该css/scss/scss_cache文件夹.文件名是一些哈希.这是我的结果目录结构:

style.php
-css
 mycss.css
    -scss
     mycss.scss
        -scss_cache
         4edf7f7bf9238jdsk9281sjkj32.css
Run Code Online (Sandbox Code Playgroud)

理想情况下,我希望编译器覆盖该css/mycss.css文件.有没有办法做到这一点,或者用新编译的css替换原始css文件的正确工作流程是什么?我总是可以随时复制和粘贴,但这看起来效率不高.

Jer*_*ley 12

scssphp用于直接为样式表提供服务.但是,如果您只想使用编译器功能,则可以这样做:

require "vendor/leafo/scssphp/scss.inc.php";
$scss = new scssc();

$scssIn = file_get_contents(__DIR__ . '/css/scss/mycss.scss');
$cssOut = $scss->compile($scssIn);
file_put_contents(__DIR__ . '/css/mycss.css', $cssOut);
Run Code Online (Sandbox Code Playgroud)

http://leafo.net/scssphp/.