Heim > php教程 > php手册 > php生成excel列名,超过26列大于Z问题解决办法

php生成excel列名,超过26列大于Z问题解决办法

WBOY
Freigeben: 2016-05-25 16:37:58
Original
1756 Leute haben es durchsucht

我们生成excel都会使用phpExcel类了,下面我来给大家介绍在生成excel列名超过26列大于Z问题解决办法吧,这是phpExcel类中的方法,今天查到了,记录一下备忘,代码如下:

public static function stringFromColumnIndex($pColumnIndex = 0)  
{  
    //  Using a lookup cache adds a slight memory overhead, but boosts speed  
    //  caching using a static within the method is faster than a class static,  
    //      though it's additional memory overhead  
    static $_indexCache = array();  
    if (!isset($_indexCache[$pColumnIndex])) {  
        // Determine column string  
        if ($pColumnIndex < 26) {  
            $_indexCache[$pColumnIndex] = chr(65 + $pColumnIndex);  
        } elseif ($pColumnIndex < 702) {  
            $_indexCache[$pColumnIndex] = chr(64 + ($pColumnIndex / 26)) .  
                                          chr(65 + $pColumnIndex % 26);  
        } else { //开源代码phprm.com 
            $_indexCache[$pColumnIndex] = chr(64 + (($pColumnIndex - 26) / 676)) .  
                                          chr(65 + ((($pColumnIndex - 26) % 676) / 26)) .  
                                          chr(65 + $pColumnIndex % 26);  
        }  
    }  
    return $_indexCache[$pColumnIndex];  
}
Nach dem Login kopieren

将列的数字序号转成字母使用,代码如下:

PHPExcel_Cell::stringFromColumnIndex($i); // 从0开始

将列的字母转成数字序号使用,代码如下:

PHPExcel_Cell::columnIndexFromString(‘AA’);


文章地址:

转载随意^^请带上本文地址!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage