The expiring token generates a random token of 128 characters with an expiration date.
The token uses base64 but the length is calculated so that it is url safe, so no padding with the = character.
The actual token is generated with random_bytes with a length of 32
You can add this library as a local, per-project dependency to your project using Composer:
composer require pageon/expiring-token
You can create a new token this way. It accepts a DateInterval as optional parameter to set a different expiration date.
The default expiration date is 3 days.
Used to create an instance of the token from the string representation
This turns the class instance into the string version of the token when the instance is used as or cast to a string.
This can be used to validate the current token against an other token
- When the tokens maths this method will return
true
- An
InvalidToken
exception will be thrown if the tokens don't match - An
TokenHasExpired
exception will be thrown if the token has expired
Returns a bool indicating if the current token has expired
Can be used to get the expiration date of the token