Skip to content
This repository has been archived by the owner on Oct 18, 2023. It is now read-only.

alexpts/php-simple-static-manager

Repository files navigation

php-simple-static-manager

SensioLabsInsight

Build Status Test Coverage Code Climate Scrutinizer Code Quality

Installation

$ composer require alexpts/php-simple-static-manager

Пример

$staticManager = new StaticManager(new Collection);
$css = $staticManager->getCssSet();
$js = $staticManager->getJsHeaderSet();

$package = new Package(new StaticVersionStrategy('v1'));

$css->addItem('bootstrap2', $package->getUrl('/bootstrap/3.3.6/css/bootstrap.css'));
$css->addItem('bootstrap', '/bootstrap/3.3.6/css/bootstrap.min.css', 90);
$css->addItem('bootstrap', ['href' => '/bootstrap/3.3.6/css/bootstrap.min.css', 'rel' => 'less'], 90);

$js->addItem('vue.js', ['src' => '/vue.min.js', 'type' => 'module'], 100);
$js->addItem('vue-router.js', '/vue-router.min.js');
$js->addItem('vue-router.js', 'https://yandex.st/vue-resource.min.js', 10); // cdn

echo $staticManager->drawStyles();

Вы можете зарегистрировать js/css ресурс с определенным приоритетом. Это позволяет загрузить библиотеки, вроде jquery с высшим приоритетом до вашего кода. При этом объявить зависимость в коде можно где угодно и в любом порядке.

Коллекция ресурсов представлена объектом коллекции: https://github.com/alexpts/php-tools/blob/master/docs/collection.md