| Server IP : 93.86.61.54 / Your IP : 216.73.216.60 Web Server : Apache/2.4.62 (Ubuntu) System : Linux rasin.ddns.net 6.8.0-124-generic #124~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 21:05:19 UTC x86_64 User : www-data ( 33) PHP Version : 8.4.22 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/phpmyadmin/vendor/spomky-labs/base64url/src/ |
Upload File : |
<?php
declare(strict_types=1);
/*
* The MIT License (MIT)
*
* Copyright (c) 2014-2020 Spomky-Labs
*
* This software may be modified and distributed under the terms
* of the MIT license. See the LICENSE file for details.
*/
namespace Base64Url;
use function base64_decode;
use function base64_encode;
use InvalidArgumentException;
use function rtrim;
use function strtr;
/**
* Encode and decode data into Base64 Url Safe.
*/
final class Base64Url
{
/**
* @param string $data The data to encode
* @param bool $usePadding If true, the "=" padding at end of the encoded value are kept, else it is removed
*
* @return string The data encoded
*/
public static function encode(string $data, bool $usePadding = false): string
{
$encoded = strtr(base64_encode($data), '+/', '-_');
return true === $usePadding ? $encoded : rtrim($encoded, '=');
}
/**
* @param string $data The data to decode
*
* @throws InvalidArgumentException
*
* @return string The data decoded
*/
public static function decode(string $data): string
{
$decoded = base64_decode(strtr($data, '-_', '+/'), true);
if (false === $decoded) {
throw new InvalidArgumentException('Invalid data provided');
}
return $decoded;
}
}