Brug
Kernearbejdsgangen er ét kald: giv TailwindPHP dit indhold samt valgfri CSS-konfiguration, så returnerer det CSS for de klasser, det finder. Klassenavne udtrækkes fra markuppen, kompileres med det løste tema, og resultatet indeholder kun de hjælpeklasser, du faktisk bruger.
use TailwindPHP\tw;
$css = tw::generate('<div class="flex items-center p-4 bg-blue-500">Hello</div>');
Uden et andet argument bruger generate() en standard-@import "tailwindcss" (tema + Preflight + hjælpeklasser). Angiv en CSS-streng eller et array for at tilpasse den.
Indholdsscanning
TailwindPHP finder klassenavne ved at læse attributterne class og className i dit indhold. Brug tw::extractCandidates() for at se, hvad der udtrækkes:
use TailwindPHP\tw;
tw::extractCandidates('<div class="flex p-4" className="bg-blue-500">');
// ['flex', 'p-4', 'bg-blue-500']
Både attributterne class og className scannes, og den returnerede liste deduplikeres. Vilkårlige kandidater (som [mask-type:luminance] eller bg-[#1da1f2]) udtrækkes på samme måde og kompileres, hvis de er gyldige. Alt, hvad der vises her, er præcis det, generate() kompilerer.
Inputformater
Alle statiske metoder accepterer de samme tre inputformer:
| Format | Signatur | Brug når |
|---|---|---|
| Kun streng | tw::generate($content) |
Standardtema, ingen tilpasning. |
| Streng + CSS-streng | tw::generate($content, $css) |
Hurtige temaændringer eller direktiver direkte i strengen. |
| Array | tw::generate(['content' => ..., 'css' => ...]) |
Du har brug for minify, importPaths eller 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,
]);
Arrayformen er den eneste, der tager indstillinger. Ud over css og minify accepterer den importPaths (se Imports), cache og cacheTtl (se Caching).
Genbrugelig compiler
Det er billigere at kompilere mange fragmenter med den samme konfiguration — en anmodningsløkke, en samling skabeloner eller et komponentbibliotek — med én enkelt compilerinstans. tw::compile() løser temaet og designsystemet én gang og genbruger dem derefter:
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);
Compileren giver også adgang til egenskabsinspektion (properties(), computedProperties(), value(), computedValue()) og temametoder (colors(), breakpoints(), spacing()). Se den fulde API for alle metoder.
Konfiguration af inputtet CSS
Det meste af TailwindPHPs funktionalitet findes i strengen CSS, du angiver som konfiguration. Fortsæt med:
- Tema —
@themevariabler og navnerum. - Direktiver —
@apply,@utility,@layer,@custom-variant. - Importer —
@import, virtuelle moduler,importPathsog Preflight. - @source — styr, hvilke filer og klasser der scannes.