| Conditions | 2 |
| Paths | 2 |
| Total Lines | 21 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 0 | ||
| 1 | <?php |
||
| 13 | public static function createToken(array $data = [], $expiresIn = '1 day'): string |
||
| 14 | { |
||
| 15 | $expirationDate = new DateTime(); |
||
| 16 | $expirationDate->modify('+'.$expiresIn); |
||
| 17 | |||
| 18 | $exp = $expirationDate->format('U'); |
||
| 19 | |||
| 20 | // Validate exp value. If less than now: |
||
| 21 | if ($exp < time()) { |
||
| 22 | // Set default exp value. |
||
| 23 | $exp = time() + 3600 * 24; // 1 day |
||
| 24 | } |
||
| 25 | |||
| 26 | $payload = [ |
||
| 27 | 'iss' => 'YonaCMS', |
||
| 28 | 'exp' => $exp, |
||
| 29 | ]; |
||
| 30 | $payload = $payload + $data; |
||
| 31 | |||
| 32 | return JWT::encode($payload, self::KEY); |
||
| 33 | } |
||
| 34 | |||
| 40 |