{ $byteArray = array(); for ($i = 0; $i < strlen($s); $i++) { $byteArray[] = ord($s[$i]); } return $byteArray; } public static function convertByteArrayToString($byteArray) { $s = ''; for ($i = 0; $i < count($byteArray); $i++) { $s .= chr($byteArray[$i]); } return $s; } public static function base64_encode_line($b) { return base64_encode(self::convertByteArrayToString($b)); } public static function base64_encode($b) { $b64 = self::base64_encode_line($b); return chunk_split($b, 64, "\n"); } public static function base64_decode($b) { return self::convertStringToByteArray(base64_decode($b)); } } var_dump(cryptoHelpers::base64_decode('BBB'));