Skip to content

Instantly share code, notes, and snippets.

@viniciuspereiras
Created December 9, 2021 22:16
Show Gist options
  • Save viniciuspereiras/4afaa9d02b425e544d87adf4acbe0046 to your computer and use it in GitHub Desktop.
Save viniciuspereiras/4afaa9d02b425e544d87adf4acbe0046 to your computer and use it in GitHub Desktop.
<?php
function base64UrlEncode($data)
{
return str_replace(['+', '/', '='], ['-','_',''], base64_encode($data));
}
$key = 'secret';
$header = [
'typ' => 'JWT',
'alg' => 'HS256'
];
$payload = [
'uid' => 1,
'username' => 'admin',
];
$header = json_encode($header);
$payload = json_encode($payload);
$header = base64UrlEncode($header);
$payload = base64UrlEncode($payload);
$sign = hash_hmac('sha256', $header . "." . $payload, $key, true);
$sign = base64UrlEncode($sign);
$token = $header . '.' . $payload . '.' . $sign;
print $token;
// setcookie("token", $token);
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment