excel的列生成算法

 

复制代码
echo '<pre>';
$i = 1;
while($i < 703){

    $char1 = floor($i / 26);
    $char2 = $i % 26;
    if($i % 26 == 0)$char1--;
    if($i > 1 && $i % 26 == 1)     echo '<br/>';
    if($char2 == 0) $char2 = 26;
    
    if($i <= 26){
        echo ' '.chr(64 + $char2). '&emsp;';
    }else{
        echo chr(64 + $char1) . chr(64 + $char2) . '&emsp;';
    }

    $i++;
}
echo '</pre>';
复制代码

 

复制代码
/**
 * 根据当前列号,返回列字符
 * @param int $i
 * @return string
 */
function get_excel_row_name($i){

    $char1 = floor($i / 26);
    $char2 = $i % 26;
    if($i % 26 == 0) $char1--;
    if($char2 == 0) $char2 = 26;

    if($i <= 26){
        return chr(64 + $char2);
    }else{
        return chr(64 + $char1) . chr(64 + $char2);
    }

}
复制代码

 

posted @   心随所遇  阅读(1538)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示