php 生产A-AZ,或者A-CZ等方法,此方法是用着生产excle不定列

 

$columnTotal 对应的生成列数,是数字,例如写26,则生成结果是A-Z,如果写27,则生成A-AA

function foundExcelColumnName($columnTotal) {
if ($columnTotal > 702) {
return '参数错误';
}

$_minBaseCode = 65;//asc2码,65代表A
$_maxBaseCode = 90;//asc2码,90代表Z
$_result = array();

$_allBaseCode = array();
for($i = $_minBaseCode; $i <= $_maxBaseCode; $i ++) {
$_allBaseCode[] = chr($i);
}

$_firstCode = $_minBaseCode;
$_secondFlag = 0;
$_secondCode = $_minBaseCode - 1;
for ($i=0; $i < $columnTotal; $i++) {
if ($_firstCode > $_maxBaseCode) {
$_firstCode = $_minBaseCode;
++ $_secondFlag;
++ $_secondCode;
}

if ($_secondFlag > 0) {
$result[] = chr($_secondCode) . chr($_firstCode);
} else {
$result[] = chr($_firstCode);
}

++ $_firstCode;
}

return $result;
}

posted @ 2018-05-07 14:17  黑白配  阅读(544)  评论(0编辑  收藏  举报