php實(shí)現(xiàn)數(shù)值轉(zhuǎn)字母的方法:1、創(chuàng)建一個php示例文件;2、定義一個numToExcelLetter方法;3、在方法體內(nèi)通過“while ($num > 0 ) {$mod = (int)($num % $base);$num = (int)($num / $base);if($mod == 0){…}}”方式實(shí)現(xiàn)根據(jù)數(shù)字轉(zhuǎn)換成excel的字母即可。
本教程操作環(huán)境:Windows10系統(tǒng)、PHP8.1版、DELL G3電腦
php怎么實(shí)現(xiàn)數(shù)值轉(zhuǎn)字母?
PHP實(shí)現(xiàn)數(shù)字轉(zhuǎn)為Excel字母
1.前言
這是借鑒某位大哥(大姐)的寫法,主要是消除了遞歸。
2.具體代碼
//根據(jù)數(shù)字轉(zhuǎn)換成excel的字母 function numToExcelLetter($num) { //由于大寫字母只有26個,所以基數(shù)為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); }
相關(guān)介紹:
int 是集合 ? = {…, -2, -1, 0, 1, 2, …} 中的某個數(shù)。
浮點(diǎn)數(shù)任意精度/BCMath任意長度整數(shù)/GMP
語法:
整型值 Int 可以使用十進(jìn)制,十六進(jìn)制,八進(jìn)制或二進(jìn)制表示,前面可以加上可選的符號(- 或者 +)。 可以用 負(fù)運(yùn)算符 來表示一個負(fù)的int。
要使用八進(jìn)制表達(dá),數(shù)字前必須加上 0(零)。 PHP 8.1.0 起,八進(jìn)制表達(dá)也可以在前面加上 0o 或者 0O 。 要使用十六進(jìn)制表達(dá),數(shù)字前必須加上 0x。要使用二進(jìn)制表達(dá),數(shù)字前必須加上 0b。
從 PHP 7.4.0 開始,整型數(shù)值可能會包含下劃線 (_),為了更好的閱讀體驗(yàn),這些下劃線在展示的時候,會被 PHP 過濾掉。
推薦學(xué)習(xí):《PHP視頻教程》