Přejít k obsahu

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.

PHP
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():

PHP
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.
PHP
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á:

PHP
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:

  • Motiv — @theme proměnné a jmenné prostory.
  • Direktivy — @apply, @utility, @layer, @custom-variant.
  • Importy — @import, virtuální moduly, importPaths a Preflight.
  • @source — určují, které soubory a třídy se prohledávají.