marcohern / slugifier
Slugify your life
Requires (Dev)
- phpunit/phpunit: ^8
This package is auto-updated.
Last update: 2025-03-25 09:09:00 UTC
README
Slug management for Laravel. marcohern/slugifier is not another slug generator (there are plenty of those), it manages slugs by keeping record of whether slugs are unique, and keep a record of repeated slugs with an index.
Installation
Install using composer:
$ composer require marcohern/slugifier
Run migrations to include the slugifier table.
$ php artisan migrate
Use the Slugifier management library.
use Marcohern\Slugifier\Lib\Slugifier;
build the slugifier.
$slugifier = new Slugifier();
you are all set to use the slugifier methods.
slugify
It slugifies, by calling Laravel's standard str_slug helper function.
echo $slugifier->slugify('Death Stranding'); //output: death-stranding
check
Converts the source into a slug and verifies it's status in the database: if it being used, and it's sequence.
$result = $slugifier->check('Death Stranding','Games'); /* $result == [ 'entity' => 'games', 'slug' => 'death-stranding', 'sequence' => 0 ] */
store
Same as check except it also increments the sequience by 1. Calling it more than once causes the sequence to increase each time.
$result = $slugifier->store('Death Stranding','Games'); /* first time $result == [ 'entity' => 'games', 'slug' => 'death-stranding', 'sequence' => 0 ] */ $result = $slugifier->store('Death Stranding','Games'); /* second time $result == [ 'entity' => 'games', 'slug' => 'death-stranding-1', 'sequence' => 1 ] */