From 540a623c4783bca3dc6a898913df38269a7c4c1d Mon Sep 17 00:00:00 2001 From: Ben Date: Mon, 22 Nov 2021 14:15:36 +0100 Subject: [PATCH] Fix base32 --- src/Base32.php | 64 +++++++++++++++++++++++++++++++++----------------- 1 file changed, 42 insertions(+), 22 deletions(-) diff --git a/src/Base32.php b/src/Base32.php index 47569f9..0936d21 100644 --- a/src/Base32.php +++ b/src/Base32.php @@ -4,31 +4,51 @@ class Base32{ public static function decode(string $data,string $alphabet): string{ - if (empty($data)) { - return ''; - } - - $data = str_split($data); - $data = array_map(static function ($character) use($alphabet) { - if ($character !== $alphabet[strlen($alphabet)-1]) { - $index = strpos($alphabet, $character); - return sprintf('%05b', $index); + $flippedAlphabet = array_flip(str_split($alphabet)); + $binary = ''; + for($i=0;$i