https://github.com/zicht/classes
Library - PHP utility for conditionally joining CSS classes.
https://github.com/zicht/classes
css packagist php
Last synced: 9 months ago
JSON representation
Library - PHP utility for conditionally joining CSS classes.
- Host: GitHub
- URL: https://github.com/zicht/classes
- Owner: zicht
- License: mit
- Created: 2017-03-31T07:52:58.000Z (about 9 years ago)
- Default Branch: release/2.0.x
- Last Pushed: 2022-08-17T10:17:19.000Z (almost 4 years ago)
- Last Synced: 2025-01-23T14:55:58.035Z (over 1 year ago)
- Topics: css, packagist, php
- Language: PHP
- Homepage:
- Size: 14.6 KB
- Stars: 1
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# classes
Utility function for conditionally joining CSS classes.
[](https://scrutinizer-ci.com/g/zicht/classes/build-status/release/1.0.x)
[](https://scrutinizer-ci.com/g/zicht/classes/?branch=release%2F1.0.x)
[](https://scrutinizer-ci.com/g/zicht/classes/?branch=release%2F1.0.x)
## Installing
```
composer require zicht/classes
```
## Purpose
When building a component (or any piece of HTML, really), it's quite common to render or not render certain CSS classes based on certain variables. If you manually concatenate the class names, it quickly becomes a mess of `if` / `else` or ternary operators. This function helps to keep it readable.
## Usage
```
HtmlClassHelper::classes('art-vandelay'); ⇒ 'art-vandelay'
HtmlClassHelper::classes(['art-vandelay', 'kramerica']); ⇒ 'art-vandelay kramerica'
HtmlClassHelper::classes(['art-vandelay' => true, 'kramerica' => false]); ⇒ 'art-vandelay'
HtmlClassHelper::classes('art-vandelay', ['kramerica' => false, 'kel-varnsen' => true]); ⇒ 'art-vandelay kel-varnsen'
```
## Credits
This function was created because the JS equivalent [classnames](https://github.com/JedWatson/classnames) was nice to use in React.
## Maintainer