PHP十进制整数转十六进制函数教程

本教程将指导您创建一个自定义PHP函数,用于将十进制整数转换为十六进制字符串。

函数目标:

编写一个名为 unt_1 的函数,该函数接受一个整数作为输入,并返回其十六进制表示形式的字符串。

函数要求:

  • 函数应该能够处理正整数和负整数。
  • 对于负整数,返回值应该以负号('-')开头。

代码示例:

<?php
function unt_1(int $n){
    $hexStr = '';
    $isNegative = false;
    if($n < 0){
        $isNegative = true;
        $n = -$n;
    }
    while($n > 0){
        $remainder = $n % 16;
        if($remainder < 10){
            $hexStr = (char)($remainder + '0') . $hexStr;
        }else{
            $hexStr = (char)($remainder - 10 + 'A') . $hexStr;
        }
        $n /= 16;
    }
    if($isNegative){
        $hexStr = '-' . $hexStr;
    }
    return $hexStr;
}

// 测试用例
$n = 78;
echo unt_1($n); // 输出 4E

$n = -78;
echo unt_1($n); // 输出 -4E
?>

代码解释:

  1. 函数定义: 定义名为 unt_1 的函数,接受一个整数 $n 作为参数。
  2. 变量初始化: 初始化一个空字符串 $hexStr 用于存储结果,以及一个布尔变量 $isNegative 用于标记输入是否为负数。
  3. 处理负数: 如果输入 $n 为负数,则将 $isNegative 设置为 true,并将 $n 转换为其绝对值。
  4. 循环转换: 使用 while 循环,只要 $n 大于 0 就一直执行以下操作:
    • 计算 $n 除以 16 的余数 $remainder
    • 如果 $remainder 小于 10,则将其转换为对应的数字字符并添加到 $hexStr 的开头。
    • 否则,将 $remainder 转换为对应的字母字符(A-F)并添加到 $hexStr 的开头。
    • $n 除以 16 并更新其值。
  5. 添加负号: 如果 $isNegativetrue,则在 $hexStr 的开头添加负号 '-'.
  6. 返回值: 返回转换后的十六进制字符串 $hexStr

使用示例:

$decimalNumber = 78;
$hexadecimalString = unt_1($decimalNumber);
echo $hexadecimalString; // 输出: 4E

此函数可以帮助您在PHP脚本中轻松地进行十进制到十六进制的转换。您可以复制粘贴此代码到您的项目中,并根据需要进行修改和使用。

PHP十进制整数转十六进制函数教程

原文地址: https://www.cveoy.top/t/topic/jv70 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录