yaroslawww / laravel-temporal-key
This package is abandoned and no longer maintained.
The author suggests using the think.studio/laravel-temporal-key package instead.
Create and retrieve random string key in database for any purposes.
Package info
github.com/dev-think-one/laravel-temporal-key
pkg:composer/yaroslawww/laravel-temporal-key
1.1.0
2023-08-20 06:21 UTC
Requires
- php: ^8.1
- illuminate/support: ^9.0|^10.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.16
- orchestra/testbench: ^8.5
- phpunit/phpunit: ^10.1
- psalm/plugin-laravel: ^2.8
- vimeo/psalm: ^5.11
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Create temporal random string key in database for any purposes. Key will be removed after expiration time or after max retrieve attempts.
Installation
Install the package via composer:
composer require think.studio/laravel-temporal-key
Optionally you can publish the config file with:
php artisan vendor:publish --provider="TemporalKey\ServiceProvider" --tag="config"
Migrate database
php artisan migrate
Add prune command to console kernel
$schedule->command('temporal-key:prune')->everyTenMinutes();
Usage
Default usage
Create key:
$key = \TemporalKey\Manager\TmpKey::create()->key() // Customize default expiration datetime $key = \TemporalKey\Manager\TmpKey::create(validUntil: \Carbon\Carbon::now()->addDay())->key() // Add metadata $key = \TemporalKey\Manager\TmpKey::create(['email' => 'user@email.com'])->key() // Customise custom maximal retrieve count. $key = \TemporalKey\Manager\TmpKey::create(usageMax: 22)->key()
Retrieve key
$temporalKey = \TemporalKey\Manager\TmpKey::find('testkey'); $temporalKey?->key(); $temporalKey?->meta();
Crete custom key type
use TemporalKey\Manager\TmpKey; class ImagePreviewTmpKey extends TmpKey { public static string $type = 'image-preview'; public static int $defaultValidSeconds = 60 * 60; public static int $defaultUsageMax = 0; // unlimited } $key = ImagePreviewTmpKey::create()->key() $temporalKey = ImagePreviewTmpKey::find('testkey');