我想将 10 进制数转换为 31 进制数
我只想使用这些字符:23456789abcdefghjkmnpqrstuvwxyz
如您所见,排除了 5 个字符(我不需要这些):1 0 o l i
我现在拥有的功能在下面,但当然不起作用。输入 2 时输出 4。tenTo31(2)
的输出应为 2
function tenTo31($num)
{
$out = "";
$alpha = "23456789abcdefghjkmnpqrstuvwxyz";
while($num > 30)
{
$r = $num % 31;
$num = floor($num / 31) - 1;
$out = $alpha[$r] . $out;
}
return $alpha[$num] . $out;
}
关于如何使这项工作有任何想法吗?
最佳答案
这是对你想要什么的盲目猜测:
$alpha = "yz23456789abcdefghjkmnpqrstuvwx";
关于php - 从 base 10 转换为 base 31(仅适用于选定字符),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1592945/