我在Joomla网站中使用lessphp,正在构建模板,我想设置一些变量并在一个较小的文件中使用它们,以达到使用类autoCompileLess的目的,但是却出现了错误


  无法解析传入的变量@font:


这是我的lessphp代码:

require_once "lessc.inc.php"; $less = new lessc; //$css_print .= $less->compile("body {font-family: @bfont;} .vikqt_box {font-family:@font;}"); // create a new cache object, and compile function autoCompileLess($inputFile, $outputFile) { // load the cache $cacheFile = $inputFile.".cache"; if (file_exists($cacheFile)) { $cache = unserialize(file_get_contents($cacheFile)); } else { $cache = $inputFile; } $less = new lessc; $less->setVariables(array( "font" => $fontname, "bfont" => $bfontname )); $newCache = $less->cachedCompile($cache); if (!is_array($cache) || $newCache["updated"] > $cache["updated"]) { file_put_contents($cacheFile, serialize($newCache)); file_put_contents($outputFile, $newCache['compiled']); } } autoCompileLess(JPATH_SITE.DIRECTORY_SEPARATOR.'templates'.DIRECTORY_SEPARATOR.$this->template.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'config.less', JPATH_SITE.DIRECTORY_SEPARATOR.'templates'.DIRECTORY_SEPARATOR.$this->template.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'output.css');


尽管如果我检查output.css文件,我可以看到我的.less文件已正确编译,所以我不明白为什么会收到此错误。
有人可以建议我吗?
谢谢你们!

最佳答案

似乎您没有在函数中设置vars $ fontname和$ bfontname。

10-08 01:52