目前我正在使用 lessphp作为我的 LESS 编译器。我知道它提供了一种设置 LESS 变量的方法,但是有没有办法覆盖文件中设置的变量?
例如,我有以下 LESS 文件:
@theme-color: #000055;
h1 {
color: @theme-color;
}
h2 {
color: @theme-color * 1.3;
}
h3 {
color: @theme-color * 1.5;
}
用 PHP 编译它,
require"path/to/leafo/lessphp/lessc.inc.php";
$less = new lessc;
$less->setVariables(array(
"theme-color" => "#000055"
));
$less->compileFile("basic/path/less/main.less", "basic/path//css/main.css");
它成功编译了文件,但变量@theme-color 没有被覆盖。有没有办法覆盖它?
如有必要,我不介意使用其他编译器,但它需要在服务器端,因为 javascript 编译器太慢,并且会导致出现无 css View 的情况。
最佳答案
可能你可以使用 compile()
而不是 compileFile()
;
$lesscode = file_get_contents("basic/path/less/main.less");
$lesscode .= "@themecolor: #000055;";
file_put_contents("basic/path//css/main.css", $less->compile($lesscode));
关于php - 有没有办法在 PHP 中用 LESS 编译器覆盖 LESS 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29887092/