Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

clsx.php

A tiny PHP utility to conditionally build class attribute strings. Inspired by clsx for JavaScript, it lets you easily compose class names using strings, arrays, and associative arrays.


Installation

Install via Composer:

composer require lemmon/clsx

Usage

echo clsx('foo', true && 'bar', 'baz');
// Output: 'foo bar baz'

echo clsx(['foo', 0, false, 'bar']);
// Output: 'foo bar'

echo clsx(['foo'], ['', 0, false, 'bar'], [['baz', [['hello'], 'there']]], 'bye');
// Output: 'foo bar baz hello there bye'

echo clsx(['foo' => true, 'bar' => false, 'baz' => isSomethingTrue()]);
// Output: 'foo baz'

echo clsx(['foo' => true], ['--special' => 'active']);
// Output: 'foo --special'

API

clsx(...$args): string

Returns a space-separated string of valid class names.

Parameters

  • ...$args: mixed Accepts any number of arguments. Arguments can be:
    • Strings
    • Arrays (flat or nested)
    • Associative arrays (keys are class names, values are booleans or strings)

Note: Falsy values like false, null, 0, '', etc. are discarded. Only truthy values or valid strings are included in the final result.

Example

clsx(true, false, '', null, 0);
// Output: ''

License

MIT © Jakub Pelák

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages