Files
hustoj/web/include/base64.php
2024-10-10 12:56:56 +08:00

40 lines
1005 B
PHP

<?php
/**
* base64编码
* @author :xia0ji233
*/
function decode64($input) {
$keyStr = "3WiPZ+xr/yKf5OdQ6UATHYItebL8B0njk192cJRNagGm7hoECvFVpqw4DsMlzuXS=";//换表
$output = "";
$chr1="";
$chr2="";
$chr3="";
$enc1=$enc2=$enc3=$enc4="";
$i = 0;
if (strlen($input) % 4 != 0) {
return "";
}
$len=strlen($input);
do {
$enc1 = strpos($keyStr,$input[$i++]);
$enc2 = strpos($keyStr,$input[$i++]);
$enc3 = strpos($keyStr,$input[$i++]);
$enc4 = strpos($keyStr,$input[$i++]);
$chr1 = ($enc1 << 2) | ($enc2 >> 4);
$chr2 = (($enc2 & 15) << 4) | ($enc3 >> 2);
$chr3 = (($enc3 & 3) << 6) | $enc4;
$output = $output.chr($chr1);
if ($enc3 != 64) {
$output .= chr($chr2);
}
if ($enc4 != 64) {
$output .= chr($chr3);
}
$chr1 = $chr2 = $chr3 = "";
$enc1 = $enc2 = $enc3 = $enc4 = "";
} while ($i < $len);
return $output;
}
?>