16进制字符串转36进制字符串
字符串 16 进制 36
2023-09-14 09:03:20 时间
PHP任意进制之间转换数字base_convert
http://php.net/manual/zh/function.base-convert.php
实际测试时因为有精度留失的问题,会导致换错误。
Warning
由于使用内部的 "double" 或 "float" 类型,base_convert() 的操作可能会导致大数值中的精度丢失。请参见本手册的 浮点数 章节以便获得更多详细信息。
$s = 'BE55D904-1F35-4838-8F8F-B27EDEA9DFAB'; $sha1 = sha1($s); echo $sha1; echo '<br />'; $sha36 = str_baseconvert($sha1, 16, 36); echo $sha36; echo '<br />'; $sha1 = str_baseconvert($sha36, 36, 16); echo $sha1; echo '<br />'; function str_baseconvert($str, $frombase=10, $tobase=36) { $str = trim($str); if (intval($frombase) != 10) { $len = strlen($str); $q = 0; for ($i=0; $i<$len; $i++) { $r = base_convert($str[$i], $frombase, 10); $q = bcadd(bcmul($q, $frombase), $r); } } else $q = $str; if (intval($tobase) != 10) { $s = ''; while (bccomp($q, '0', 0) > 0) { $r = intval(bcmod($q, $tobase)); $s = base_convert($r, 10, $tobase) . $s; $q = bcdiv($q, $tobase, 0); } } else $s = $q; return $s; }
相关文章
- springmvc接收字符串转list
- 将图片转换为Base64编码字符串、解析Base64编码字符串后生成图片「建议收藏」
- 【说站】python字符串中变量的使用
- javascript正则表达式 教程_js正则表达式匹配字符串
- java 日期格式化– SimpleDateFormat 的使用。字符串转日期,日期转字符串详解编程语言
- 算法-左旋转字符串详解编程语言
- 一段对16进制字符串进行异或的代码详解编程语言
- 分隔Linux Cut命令分割空格字符串(linuxcut空格)
- MySQL字符串转列表: 简单灵活方法(mysql字符串转列)
- 串MSSQL 中替换字符串的技巧(mssql替换字符)
- Oracle字符串转换成日期:技巧与实践(oracle字符串转日期)
- 使用 sed 命令查找和替换文件中的字符串的 16 个示例
- Linux上的字符串替换技巧(替换字符串linux)
- c#实现16进制和字符串之间转换的代码
- asp正则过滤重复字符串的代码
- Mootools1.2教程输入过滤第二部分(字符串)
- PHP提取字符串中的图片地址[正则表达式]
- PHP查找字符串常用函数介绍
- 自定义实现Json字符串向C#对象转变的方法
- js实现字符串的16进制编码不加密