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;
}