Minifyr
Minifica e agrupa scripts CSS ou JS., (*1)
Se vocĂȘ estiver interessado em economizar largura de banda, reduza o tempo de carregamento e acelerar seu site ou aplicativo da web, entĂŁo, o Minifier Ă© bom para vocĂȘ., (*2)
Como usar
Para instalar:, (*3)
composer require luquinhasbrito/minifyr
Por exemplo:, (*4)
/ (DiretĂłrio raiz do projeto)
/ classes/minifyr.php
/ ...
Agora, crie o script que vai usĂĄ-lo para minificar os recursos que vocĂȘ precisa., (*5)
Como exemplo, crie um arquivo chamado min.php na pasta raiz do seu projeto, como abaixo:, (*6)
/ (DiretĂłrio raiz do projeto)
/ classes/minifyr.php
/ min.php
/ ...
EntĂŁo, vocĂȘ pode usar o seguinte cĂłdigo para que isso aconteça:, (*7)
require_once('src/minifyr.php');
// Obter configuraçÔes e arquivos para minificar
// As opçÔes são:
// f - Requeridos. Lista de arquivos separados por vĂrgulas ou vĂrgulas
// screen - Opcional. Vazio. Força o download do arquivo minificado.
// debug - Opcional. Vazio. Quando administrado, ignore a minificação.
//
// @use http://domain.tld/min.php?f=assets/my.css[&screen[&debug]]
$debug = isset( $_GET[ 'debug' ] ) ? TRUE : FALSE;
$screen = isset( $_GET[ 'screen' ] ) ? TRUE : FALSE;
$files = isset( $_GET[ 'f' ] ) ? $_GET[ 'f' ] : NULL;
$m = new RT\Minifyr($debug, $screen);
$m->files( explode(',', $files) )
->compression(true) // Pode ser true/false. Habilite a compressĂŁo gzip
->cache(true) // Pode ser true/false. Habilita o cabeçalho para o cache
->uglify(true) // Pode ser true/false. uglify js codes
->expires('...') // Uma string que define a data de validade
->charset('...') // O charset. O padrĂŁo Ă© utf-8
->files([]) // Uma série de strings contendo caminhos de arquivos
->file('...') // Quando apenas um arquivo, uma string com caminho de arquivo
->render(false); // Torna a saĂda.
// Se um true booleano for dado, retorna a saĂda como seqĂŒĂȘncia de caracteres.
Agora, tudo o que vocĂȘ precisa fazer Ă© chamĂĄ-lo em seu arquivo HTML:, (*8)
<link type="text/css" media="all" href="min.php?f=path/to/css/file.css" />
Ă isso aĂ. FĂĄcil e simples. Muito fĂĄcil! :), (*9)
OpçÔes
Estas sĂŁo as opçÔes que vocĂȘ pode passar:, (*10)
| Opção |
Amostra |
Descrição |
| f |
min.php?f=file-path.css |
Ă o arquivo a ser minificado. * |
| screen |
min.php?screen&f=... |
Ă a maneira de renderizar o conteĂșdo no navegador e devolvĂȘ-lo como um arquivo. |
| debug |
min.php?debug&f=... |
Ă uma maneira de nĂŁo minificar o conteĂșdo. Isso ajuda vocĂȘ a depurar seus cĂłdigos. |
Utilização avançada para:
Opção f : string
VocĂȘ tambĂ©m pode passar uma lista de arquivos. Neste caso, todos os arquivos serĂŁo carregados e serĂŁo retornados minificados como um arquivo exclusivo. Esta tĂ©cnica Ă© interessante para reduzir o nĂșmero de chamadas que vocĂȘ faz para o seu servidor.
Para passar uma lista de arquivos, vocĂȘ deve dar nomes de arquivos separados por vĂrgulas (,):, (*11)
E.g:, (*12)
min.php?f=assets/css/my-css-file-1.css,assets/css/my-css-file-2.css,...
VocĂȘ tambĂ©m pode carregar recursos externos.
Para fazer isso, basta passar o arquivo com um prefixo: external|., (*13)
E.g:, (*14)
min.php?f=external|code.jquery.com/jquery-2.1.1.min.js[, ...]
Mudanças
1.6 Adicionado suporte para arquivos externos. Impedir minificação dupla em arquivos jå minificados., (*15)
2.0 Refatorado de um "modo de script" para um "modo de classe". Novos recursos adicionados., (*16)