【发布时间】:2011-10-30 15:32:15
【问题描述】:
php只有36个base转换器,我需要更多,我找到了代码但它是在js中,谁能帮我把它翻译成php?
谢谢。
function baseConverter (number,ob,nb) {
// Created 1997 by Brian Risk. http://brianrisk.com
//number = number.toUpperCase();
var list = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
var dec = 0;
if(number=="0" || number=="" || number==0){
number="0";
}else{
for (var i = 0; i <= number.length; i++) {
dec += (list.indexOf(number.charAt(i))) * (Math.pow(ob , (number.length - i - 1)));
}
number = "";
var magnitude = Math.floor((Math.log(dec))/(Math.log(nb)));
for (var i = magnitude; i >= 0; i--) {
var amount = Math.floor(dec/Math.pow(nb,i));
number = number + list.charAt(amount);
dec -= amount*(Math.pow(nb,i));
}
}
return number;
}
【问题讨论】:
-
注意,请阅读常见问题解答。这个问题不适合 StackOverflow。如果您将问题更改为类似“是否有用于 PHP 的基数高于 36 的基数转换器?”,您可能也会得到更好的答案。
-
如果您只是在寻找 base 64 编码器:php.net/manual/en/function.base64-encode.php
-
@dtanders 感谢您的链接,但那些 base64 编码器使字符串更长,我的程序只处理编码为自定义 base62 的 base10 数字,使其更短且更易于处理
-
@Pindatjuh hmn...它不仅仅是基本转换器,我也需要那些自定义字母表......:D
-
我其实是想找一个JS转换器。谢谢!
标签: php javascript converter base