PHP十进制、二进制、八进制和十六进制转换函数说明
封面图
•
2025-10-22
•
PHP
161
0
0
0
在 PHP 中,可以使用内置函数来进行 **十进制、二进制、八进制和十六进制** 之间的相互转换。以下是这些函数的详细说明及示例: --- ## ✅ 一、常用转换函数 ### 1. `decbin()`:将十进制数转换为二进制字符串 ```php echo decbin(10); // 输出: 1010 ``` ### 2. `decoct()`:将十进制数转换为八进制字符串 ```php echo decoct(10); // 输出: 12 ``` ### 3. `dechex()`:将十进制数转换为十六进制字符串(小写) ```php echo dechex(255); // 输出: ff ``` ### 4. `bindec()`:将二进制字符串转换为十进制数 ```php echo bindec('1010'); // 输出: 10 ``` ### 5. `octdec()`:将八进制字符串转换为十进制数 ```php echo octdec('12'); // 输出: 10 ``` ### 6. `hexdec()`:将十六进制字符串转换为十进制数 ```php echo hexdec('ff'); // 输出: 255 ``` --- ## ✅ 二、其他相关函数 ### 7. `base_convert()`:用于任意进制之间的转换(支持 2~36 进制) ```php // 将十进制 10 转换为二进制 echo base_convert(10, 10, 2); // 输出: 1010 // 将十六进制 FF 转换为八进制 echo base_convert('ff', 16, 8); // 输出: 377 ``` > ⚠️ 注意:`base_convert()` 的参数顺序是: > - 第一个参数是原始数值(字符串形式) > - 第二个参数是原始进制 > - 第三个参数是目标进制 --- ## ✅ 三、示例汇总 | 操作 | 函数 | 示例 | |------|------|------| | 十进制 → 二进制 | `decbin(10)` | `1010` | | 十进制 → 八进制 | `decoct(10)` | `12` | | 十进制 → 十六进制 | `dechex(255)` | `ff` | | 二进制 → 十进制 | `bindec('1010')` | `10` | | 八进制 → 十进制 | `octdec('12')` | `10` | | 十六进制 → 十进制 | `hexdec('ff')` | `255` | | 任意进制转换 | `base_convert('ff', 16, 8)` | `377` | --- ## ✅ 四、注意事项 - 所有函数都接受整数作为输入或返回字符串。 - 如果处理的是非常大的数字,建议使用 `gmp` 扩展库(如 `gmp_strval()`)来处理大整数。 - `base_convert()` 支持从 2 到 36 进制之间的转换,例如: ```php echo base_convert('1A', 16, 2); // 输出: 11010 ``` --- 如果你需要处理更复杂的进制转换或大整数,可以告诉我具体需求,我可以提供更详细的解决方案 😊
上一篇:
PHP函数补完:session_id()
下一篇:
php连接redis出现Redis server went away
标题录入,一次不能超过6条
返回顶部
留言
留言
评论