PHP动态获取excel表格列的字母,只需要输入获取字母的数列即可返回对应的Excel字母列。
//获取对应的表格列字母
public function getExcelArrange($num){
//定义26个字母
$data = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');// 0 - 25个字母
//如果需要获取字母的位置大于25
if($num > 25){
//第一个字母位置
$oneNum = floor($num / 26) - 1;
//如果得到第一个字母大于0
if($oneNum > 0){
//获取第二个字母位置
//总数 - (26 * 第一个字母位置的数) - 26
$twoNum = ($num - (26 * $oneNum)) - 26;
}else{
//如果第一个字母等于0,则直接减去总字母数即可
$twoNum = $num - 26;
}
//拼接字母输出
$arrange = $data[$oneNum].$data[$twoNum];
}else{
//如果没有大于25,直接输出需要的字母
$arrange = $data[$num];
}
//返回
return $arrange;
}
描述:
代码分三个不分完成;
1、定义26个字母数组;
2、计算获得所需的字母,最高可获得的字母为:zz
3、返回字母值;
//获取对应的表格列字母
public function getExcelArrange($num){
//定义26个字母
$data = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');// 0 - 25个字母
//如果需要获取字母的位置大于25
if($num > 25){
//第一个字母位置
$oneNum = floor($num / 26) - 1;
//如果得到第一个字母大于0
if($oneNum > 0){
//获取第二个字母位置
//总数 - (26 * 第一个字母位置的数) - 26
$twoNum = ($num - (26 * $oneNum)) - 26;
}else{
//如果第一个字母等于0,则直接减去总字母数即可
$twoNum = $num - 26;
}
//拼接字母输出
$arrange = $data[$oneNum].$data[$twoNum];
}else{
//如果没有大于25,直接输出需要的字母
$arrange = $data[$num];
}
//返回
return $arrange;
}