Я пытаюсь автоматически загрузить класс в Symfony 2. Класс живет в vendor/lessc/lessc.inc.php
Он не загружается, говоря, что класс lessc не найден. Что я делаю неправильно?
Из app / autoloader.php
$loader->registerNamespaces(array(
//...
'Less' => __DIR__.'/../vendor/lessc',
));
С lessc.inc.php
namespace Less;
class lessc {
//..
}
От vendor /assetic / src / Assetic / Filter / LessphpFilter.php , который вызывает класс lessc
.
namespace Assetic\Filter;
use Assetic\Asset\AssetInterface;
use Less;
//...
class LessphpFilter implements FilterInterface
{
public function filterLoad(AssetInterface $asset)
{
//...
$lc = new Less\lessc();
Редактировать : Решение, основанное на совете, который я получил:
Путь к классу = vendor/Less/lessc.php
производитель / Less / lessc.php
namespace Less;
class lessc {
vendor /assetic / src / Assetic / Filter / LessphpFilter.php соответствует описанному выше.
внутри шаблона веточки
{% stylesheets
'@MyBundle/Resources/public/less/styles.less'
filter='lessphp'
%}
<link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
приложение / autoloader.php
'Less' => __DIR__.'/../vendor'