这个问题有点陈旧,但是当我试图围绕如何创建一个内部使用的哈希类时,我发现了这个问题,我想出了这个基本功能,它将base64编码一个具有相应字符/意义的整数用作4个字符的’迭代计数’.可能的值为1到16,777,215
private function base64_int_encode($num){
$alphabet_raw = "./0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
$alphabet = str_split($alphabet_raw);
$arr = array();
$base = sizeof($alphabet);
while($num){
$rem = $num % $base;
$num = (int)($num / $base);
$arr[]=$alphabet[$rem];
}
$arr = array_reverse($arr);
$string = implode($arr);
return str_pad($string, 4, '.', STR_PAD_LEFT);
}
希望它可以帮到某人!