CLI
./vendor/bin/tailwindphp е PHP порт на @tailwindcss/cli без нужда от Node.js. Приема същите опции за компилация с изключение на картите на изходния код (--map), но сканира съдържанието по различен начин: вижте Какво сканира CLI. След composer require tailwindphp/tailwindphp двоичният файл се свързва с vendor/bin/.
Ако ви е нужен само CSS по време на изпълнение от PHP, използвайте вместо това API — CLI е за работни процеси на компилация, които записват стилова таблица на диск.
Бърз старт
# Build CSS from an input file
./vendor/bin/tailwindphp -i ./src/app.css -o ./dist/styles.css
# Watch for changes and rebuild
./vendor/bin/tailwindphp -i ./src/app.css -o ./dist/styles.css --watch
# Build minified for production
./vendor/bin/tailwindphp -i ./src/app.css -o ./dist/styles.css --minify
Опции
tailwindphp [-i input.css] [-o output.css] [--watch] [options…]
Задавайте стойността на дългите опции с =: --input=./src/app.css, --output=./dist/styles.css, --cwd=/path/to/project. Стойност, разделена с интервал след дълга опция (--input ./src/app.css), в момента се игнорира без грешка и компилацията използва стойностите по подразбиране (#13). Кратките опции приемат стойността като следващ аргумент (-i ./src/app.css).
| Опция | Описание | По подразбиране |
|---|---|---|
-i, --input |
Входен файл CSS; --input=- го чете от stdin |
@import "tailwindcss" |
-o, --output |
Изходен файл | - (stdout) |
-w, --watch |
Следи за промени и компилира отново при нужда | — |
-m, --minify |
Оптимизира и минифицира изхода | — |
--optimize |
Документирано е като „оптимизиране без минифициране“; в момента минифицира като --minify (#9) |
— |
--cwd |
Текущата работна директория | . |
-h, --help |
Показва информация за употребата | — |
-V, --version |
Извежда версията | — |
-v, --verbose |
Извежда стека при неуспешна компилация | — |
Когато --output е - (стойността по подразбиране), компилираният CSS се извежда към stdout, така че можете да го пренасочите другаде. Съобщенията за напредъка (банерът с версията и Done in …ms) се извеждат към stderr.
За разлика от @tailwindcss/cli, няма опция --map: TailwindPHP не генерира карти на изходния код.
Входен CSS
Създайте app.css с импорта, темата и директивите на Tailwind:
@import "tailwindcss";
@theme {
--color-brand: #3b82f6;
}
Какво сканира CLI
Сканирането на съдържанието в CLI все още не следва @source по начина, по който го прави @tailwindcss/cli (#8). В текущото издание:
- Ако във входния CSS няма директива за файл
@source, CLI сканира рекурсивно работната директория (--cwd). Това включваvendor/иnode_modules/;.gitignoreне се проверява. - Ако има една или повече файлови директиви
@source, CLI сканира рекурсивно директорията на входния файл. Пътят или шаблонът glob в директивата не се прилага:@source "../templates"доsrc/app.cssсканираsrc/, а неtemplates/. - Директивите
@source not "…"се пропускат; те не изключват нищо. @source inline("…")и@source not inline("…")работят както е документирано, защото компилаторът ги обработва сам.
Четат се само файлове със следните разширения: php, html, htm, twig, blade.php, vue, jsx, tsx, svelte, astro и mdx. Имената на класовете се вземат от атрибутите class и className, както при tw::extractCandidates(), затова клас, който присъства само в низ PHP или JavaScript, няма да бъде открит. Добавете принудително такива класове с @source inline("…").
Докато това не бъде поправено, надеждната настройка е да поставите входен файл CSS в началото на директорията, която искате да сканирате:
/* templates/app.css: scans templates/ recursively */
@import "tailwindcss";
@source "./";
Вижте @source за синтаксиса на директивата, включително формите not и inline().
Примери
# Build from an input file
tailwindphp -i ./src/app.css -o ./dist/styles.css
# Build minified for production
tailwindphp -i ./src/app.css -o ./dist/styles.css -m
# Watch mode with minification
tailwindphp -i ./src/app.css -o ./dist/styles.css -w -m
# Run against a different working directory
tailwindphp -i app.css -o dist/styles.css --cwd=/path/to/project
CLI създава изходната директория, ако тя не съществува, и прекратява с грешка, ако входният файл липсва или входният и изходният път са еднакви. Режимът за наблюдение проверява входния файл и сканираните файлове на всеки 500 ms и компилира отново при промяна на някой от тях или при появата на нов файл.
Глобална инсталация
Инсталирайте глобално, за да използвате tailwindphp отвсякъде:
composer global require tailwindphp/tailwindphp
# Now available globally
tailwindphp -i ./src/app.css -o ./dist/styles.css
Вижте Първи стъпки за настройване на проекта и API за генериране на CSS по време на изпълнение от PHP.