friendship ended with social-app. php is my new best friend
1<?php
2declare(strict_types=1);
3
4namespace Lcobucci\JWT\Encoding;
5
6use DateTimeImmutable;
7use Lcobucci\JWT\ClaimsFormatter;
8use Lcobucci\JWT\Token\RegisteredClaims;
9
10use function array_key_exists;
11
12final class UnixTimestampDates implements ClaimsFormatter
13{
14 /** @inheritdoc */
15 public function formatClaims(array $claims): array
16 {
17 foreach (RegisteredClaims::DATE_CLAIMS as $claim) {
18 if (! array_key_exists($claim, $claims)) {
19 continue;
20 }
21
22 $claims[$claim] = $this->convertDate($claims[$claim]);
23 }
24
25 return $claims;
26 }
27
28 private function convertDate(DateTimeImmutable $date): int
29 {
30 return $date->getTimestamp();
31 }
32}