PHPが26列を超えるExcel列名を生成し、Z、excel26列より大きい場合の解決策
この記事の例では、php が 26 列を超え、Z より大きい Excel 列名を生成する場合の解決策について説明します。参考のためにみんなで共有してください。具体的な分析は次のとおりです:
エクセルを生成する際、皆さんはphpExcelクラスを使用します。 ここでは、26列を超え、Zよりも大きいExcelの列名を生成する場合の解決策を紹介します。 今日見つけたphpExcelクラスのメソッドです。メモとしてコードは次のとおりです。
コードをコピーします コードは次のとおりです:
public static function stringFromColumnIndex($pColumnIndex = 0)
{
// ルックアップ キャッシュを使用すると、メモリのオーバーヘッドがわずかに追加されますが、速度が向上します
// メソッド内で static を使用したキャッシュは、クラス static より高速です
//ただし、追加のメモリオーバーヘッドが発生します
static $_indexCache = array();
If (!isset($_indexCache[$pColumnIndex])) {
// 列文字列を決定します
If ($pColumnIndex
$_indexCache[$pColumnIndex] = chr(65 + $pColumnIndex);
$_indexCache[$pColumnIndex] = chr(64 + ($pColumnIndex / 26))
;
} else {
$_indexCache[$pColumnIndex] = chr(64 + (($pColumnIndex - 26) / 676)) . chr(65 + ((($pColumnIndex - 26) % 676) / 26)) . 26);
$_indexCache[$pColumnIndex] を返します
}
列の数値シリアル番号を文字に変換するコードは次のとおりです:
コードをコピーします
コードは次のとおりです:
PHPExcel_Cell::stringFromColumnIndex($i) // o
から開始します。
列の文字を数値のシリアル番号に変換するコードは次のとおりです:
コードをコピーします
コードは次のとおりです:
PHPExcel_Cell::columnIndexFromString('AA');
この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。
http://www.bkjia.com/PHPjc/934932.html
www.bkjia.com
本当
http://www.bkjia.com/PHPjc/934932.html
技術記事 php が 26 列を超え、Z より大きい Excel 列名を生成する場合の解決策。 この記事の例では、php が 26 列を超え、Z より大きい Excel 列名を生成する場合の解決策について説明します。参考のためにみんなで共有してください。 ...