PHP 动态获取Excel表格字母列

news/2024/7/21 7:53:33 标签: php, excel

PHP动态获取excel表格列的字母,只需要输入获取字母的数列即可返回对应的Excel字母列。

php">//获取对应的表格列字母
	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;

    }


http://www.niftyadmin.cn/n/5090150.html

相关文章

稚晖君项目复刻:L-ink门禁卡(1)——环境搭建与第一个项目创建

行文目录 前言其他文章正文开始STM32CubeMX安装STM32CubeMX安装L0的固件支持包Clion安装OpenOCD安装MinGw安装arm-none-eabi-gcc安装Clion配置 创建STM32工程创建STM32CubeMX工程更改芯片型号 参考文献 前言 其实关于稚晖君的L-ink门禁卡在我本科阶段就已经刷过好几次了&#x…

linux进阶-ipc信号(软中断信号)

信号 信号(软中断信号),用于通知进程发生了异步事件(它是Linux系统响应某些条件而产生的一个事件,它是在软件层次上对中断机制的一种模拟,是一种异步通信的方式,在原理上,一个进程收…

rhel8 nmcli学习

rhel8我自己用过的配置网路方法有以下几个: (1)手动配置ifcfg文件,通过NM来生效。 (2)手动配置ifcfg文件,通过重启NetworkManager.service生效。 (3)通过NM自带工具配置网络,比如nmcli。 (4)使用命令 nutui命令&am…

HTML5播放 M3U8的hls流地址

在HTML5页面上播放M3U8的hls流地址 <!DOCTYPE html> <html> <head> <meta charset"UTF-8"> <title>视频播放</title> <script src"https://cdn.jsdelivr.net/npm/hls.jslatest"></script> &…

对称加密和非对称加密以及CA证书

对称加密 对称加密只用到了公匙,这个公匙是消息的发送方和消息的接收方共享的,也就是消息发送方使用这个公匙对消息加密,然后接收方使用公匙对消息解密,最典型的例子比如像 encrypt 加密,比如我们有个 springboot 应用,需要对 application.yml 文件里的密码做加密,我们…

凯百斯纳米盛装亮相2024济南生物发酵展专注于高压均质解决方案

凯百斯纳米技术&#xff08;上海&#xff09;有限公司盛装亮相2024济南生物发酵展&#xff0c;专注于高压均质、破碎、乳化、分散、粉碎等解决方案&#xff01; 2024第12届国际生物发酵产品与技术装备展&#xff08;济南展&#xff09;将于2024年3月5-7日在山东国际会展中心盛…

代码随想录——图论一刷day02

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、力扣695. 岛屿的最大面积二、力扣1020. 飞地的数量三、力扣1254. 统计封闭岛屿的数目 前言 一、力扣695. 岛屿的最大面积 淹没岛屿的递归 class Solution…

gRPC之gRPC Gateway

1、gRPC Gateway etcd3 API全面升级为gRPC后&#xff0c;同时要提供REST API服务&#xff0c;维护两个版本的服务显然不太合理&#xff0c;所以 grpc-gateway 诞生了。通过protobuf的自定义option实现了一个网关&#xff0c;服务端同时开启gRPC和HTTP服务&#xff0c; HTTP服…