php怎么实现数值转字母
php实现数值转字母的方法:1、创建一个php示例文件;2、定义一个numToExcelLetter方法;3、在方法体内通过“while ($num > 0 ) {$mod = (int)($num % $base);$num = (int)($num / $base);if($mod == 0){...}}”方式实现根据数字转换成excel的字母即可。
本教程操作环境:Windows10系统、PHP8.1版、DELL G3电脑
php怎么实现数值转字母?
PHP实现数字转为Excel字母
1.前言
这是借鉴某位大哥(大姐)的写法,主要是消除了递归。
2.具体代码
//根据数字转换成excel的字母
function numToExcelLetter($num)
{
//由于大写字母只有26个,所以基数为26
$base = 26;
$result = '';
while ($num > 0 ) {
$mod = (int)($num % $base);
$num = (int)($num / $base);
if($mod == 0){
$num -= 1;
$temp = numToLetter($base) . $result;
} elseif ($num == 0) {
$temp = numToLetter($mod) . $result;
} else {
$temp = numToLetter($mod) . $result;
}
$result = $temp;
}
return $result;
}
function numToLetter($num)
{
if ($num == 0) {
return '';
}
$num = (int)$num - 1;
//获取A的ascii码
$ordA = ord('A');
return chr($ordA + $num);
}
相关介绍:
int 是集合 ℤ = {..., -2, -1, 0, 1, 2, ...} 中的某个数。
浮点数任意精度/BCMath任意长度整数/GMP
语法:
整型值 Int 可以使用十进制,十六进制,八进制或二进制表示,前面可以加上可选的符号(- 或者 +)。 可以用 负运算符 来表示一个负的int。
要使用八进制表达,数字前必须加上 0(零)。 PHP 8.1.0 起,八进制表达也可以在前面加上 0o 或者 0O 。 要使用十六进制表达,数字前必须加上 0x。要使用二进制表达,数字前必须加上 0b。
从 PHP 7.4.0 开始,整型数值可能会包含下划线 (_),为了更好的阅读体验,这些下划线在展示的时候,会被 PHP 过滤掉。