如何安装lessphp用于资产框架?

时间:2013-08-13 00:42:16

标签: php less assetic lessphp

我找不到将 lessphp 文件添加到项目中的方法,以便资产找到它们。我不希望在资产文件中添加额外的require句子或以任何方式对其进行修改,以便日后更新。

我收到此错误:

Fatal error: Class 'lessc' not found in ....../kriswallsmith/assetic/src/Assetic/Filter/LessphpFilter.php on line 87

该行的代码是lessc实例化:

  $lc = new \lessc();

注意:我无法使用Composer来安装它,因为Composer会给我的项目带来一些问题。

1 个答案:

答案 0 :(得分:2)

Assetic不会为您导入lessc.inc.php。你必须手动完成。

我假设您在应用程序中使用Assetic standalone,您应该这样做:

<?php

use Assetic\Asset\AssetCollection;
use Assetic\Asset\FileAsset;
use Assetic\Filter\LessphpFilter;

require "path/to/lessc.inc.php"; // You should include it yourself

$css = new AssetCollection(array(
    new FileAsset('/path/to/src/styles.less', array(new LessphpFilter())),
));
echo $css->dump();

但是对于您使用Symfony2的因果关系,您应该在app/config/config.yml中配置lessphp过滤器,如下所示:

assetic:
    debug:          %kernel.debug%
    use_controller: false
    bundles:        []
    filters:
       cssrewrite: ~
       lessphp:
           file: "%kernel.root_dir%/../vendor/leafo/lessphp/lessc.inc.php"
           apply_to: "\.less$"

让我知道。