PHP实现的62进制转10进制,10进制转62进制函数示例

时间:2022-05-21 01:08:38

本文实例讲述了PHP实现的62进制转10进制,10进制转62进制函数。分享给大家供大家参考,具体如下:

百度出来的无法使用,只好自己写,有bug的地方欢迎留言,感谢

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
function from62to10($str){
  $dict = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
  $len = strlen($str);
  $dec = 0;
  for($i = 0;$i<$len;$i++){
    //找到对应字典的下标
    $pos = strpos($dict, $str[$i]);
    $dec += $pos*pow(62,$len-$i-1);
  }
  return $dec;
}
echo from62to10('6r2HqO');
echo '<br>';
$dec = '5896401674';
function from10to62($dec) {
  $dict = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
  $result = '';
  do {
    $result = $dict[$dec % 62] . $result;
    $dec = intval($dec / 62);
  } while ($dec != 0);
  return $result;
}
echo from10to62($dec);

运行结果:

5896401674
6r2Hq1

PS:这里再为大家推荐几款计算与转换工具供大家参考使用:

在线任意进制转换工具:https://tool.zzvips.com/t/hex/

希望本文所述对大家PHP程序设计有所帮助。

原文链接:https://blog.csdn.net/u010071211/article/details/85115195