Použití
Základní postup tvoří jediné volání: předejte TailwindPHP svůj obsah a volitelnou konfiguraci CSS a vrátí se CSS pro nalezené třídy. Názvy tříd se získají ze značek, zkompilují podle vyřešeného tématu a výsledkem jsou pouze utility, které skutečně používáte.
use TailwindPHP\tw;
$css = tw::generate('<div class="flex items-center p-4 bg-blue-500">Hello</div>');
Bez druhého argumentu použije generate() výchozí @import "tailwindcss" (téma + Preflight + utility). Pro úpravy předejte řetězec CSS nebo pole.
Prohledávání obsahu
TailwindPHP hledá názvy tříd v atributech class a className vašeho obsahu. Chcete-li zjistit, co se z něj načítá, použijte tw::extractCandidates():
use TailwindPHP\tw;
tw::extractCandidates('<div class="flex p-4" className="bg-blue-500">');
// ['flex', 'p-4', 'bg-blue-500']
Prohledávají se atributy class i className a vrácený seznam neobsahuje duplicity. Stejným způsobem se získají i libovolní kandidáti (například [mask-type:luminance] nebo bg-[#1da1f2]) a platní se zkompilují. Vše, co se zde objeví, zkompiluje přesně generate().
Vstupní formáty
Každá statická metoda přijímá stejné tři tvary vstupu:
| Formát | Signatura | Kdy použít |
|---|---|---|
| Pouze řetězec | tw::generate($content) |
Výchozí téma bez úprav. |
| Řetězec + řetězec CSS | tw::generate($content, $css) |
Rychlé úpravy tématu nebo direktivy přímo ve vstupu. |
| Pole | tw::generate(['content' => ..., 'css' => ...]) |
Potřebujete minify, importPaths nebo cache. |
use TailwindPHP\tw;
// Format 1: String only
tw::generate('<div class="flex">');
// Format 2: String + CSS string
tw::generate('<div class="flex">', '@import "tailwindcss"; @theme { --color-brand: #3b82f6; }');
// Format 3: Array with content, css, and options
tw::generate([
'content' => '<div class="flex p-4">',
'css' => '@import "tailwindcss";',
'minify' => true,
]);
Možnosti přijímá pouze varianta s polem. Kromě css a minify podporuje také importPaths (viz Importy), cache a cacheTtl (viz Ukládání do mezipaměti).
Opakovaně použitelný kompilátor
Při kompilaci mnoha úryvků se stejnou konfigurací — například v cyklu požadavků, pro sadu šablon nebo knihovnu komponent — je výhodnější použít jedinou instanci kompilátoru. tw::compile() jednou vyřeší téma a systém návrhu a poté je znovu používá:
use TailwindPHP\tw;
$compiler = tw::compile('@import "tailwindcss"; @theme { --color-brand: #3b82f6; }');
$css = $compiler->generate('<div class="flex p-4 bg-brand">');
$candidates = $compiler->extractCandidates('<div class="flex p-4 bg-brand">');
$minified = $compiler->minify($css);
Kompilátor také nabízí kontrolu vlastností (properties(), computedProperties(), value(), computedValue()) a přístupové metody k tématu (colors(), breakpoints(), spacing()). Úplný přehled všech metod najdete v API.
Konfigurace vstupu CSS
Většina možností TailwindPHP spočívá v řetězci CSS, který předáte jako konfiguraci. Pokračujte na: