Я нашел это на SO: Как правильно использовать PHPExcel с Symfony 2 а>
Это работает, но я хочу использовать его с composer. Первую часть я уже решил: загрузить PHPExcel для специального тега (последняя стабильная версия)
Я не понимаю, как получить тег с таким синтаксисом:
"repositories": [
{
"type": "vcs",
"url": "https://github.com/umpirsky/SyliusAssortmentBundle"
}
]
Поэтому я использую нотацию Package
:
я выяснил, что reference
должно быть именем тега на github. И version
не может быть одним и тем же значением (PHPExcel_1.7.8). Кажется, что алфавитные символы не допускаются, поэтому это только версия в виде числа (1.7.8)
"repositories": [{
"type": "package",
"package": {
"name": "PHPOffice/PHPExcel",
"version": "1.7.8",
"source": {
"url": "https://github.com/PHPOffice/PHPExcel.git",
"type": "git",
"reference": "PHPExcel_1.7.8"
}
}
}]
Следующий шаг я не решил. Я пробовал все комбинации для автозагрузки: psr-0, classmap, разные пути, относительно проекта/поставщика/phpexcel, каждый раз обновлять композитор, но ничего не получалось.
Это работает, только если я поставлю эту строку
$loader->add('PHPExcel', __DIR__.'/../vendor/PHPOffice/PHPExcel/Classes');
в приложение/autoload.php. Я обнаружил, что первая строка (PHPExcel
) также может быть пустой строкой: ''
.
Есть ли разница, если я использую PHPExcel
или ''
?
Итак, мой основной вопрос: как мне избежать записи этой строки в autoload.php, помещая эквивалентные команды в composer.json моего проекта?