随笔 - 493  文章 - 0  评论 - 97  阅读 - 239万

[Php] PHPExcel读取Excel文件(或来自客户端上传的)并返回二维数组

 客户端示例(antd - Upload组件): 文件上传

1
2
3
4
5
6
7
<div>
                    <Upload action='/api/login/upload' showUploadList={false}>
                        <Button>
                            <Icon type='upload' /> Upload
                        </Button>
                    </Upload>
                </div>

 php 接收客户端上传的接口(LoginController.php):

1
2
3
4
5
6
7
8
9
10
public function upload()
{
    $data = ExcelModule::readUploadedFile();
    if(!$data)
        return result(1, '接收excel文件失败, 具体请看日志');
 
    // todo: 针对读取到的二维数据进行相应处理
 
    return result(0, 'success', $data);     // 示例: 返回读取到的数据
}

Php端依赖的接口:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/**
     * 读取excel文件数据, 返回array数据
     * @param $filePath
     * @return array
     */
    public static function readFile(string $filePath)
    {
        try {
            $reader = \PHPExcel_IOFactory::createReaderForFile($filePath);
            $excel = $reader->load($filePath);
            $sheet = $excel->getActiveSheet();
 
            return $sheet->toArray();
        }
        catch(\Exception $e)
        {
            log_message(sprintf('读取excel文件失败: file=%s, errorMsg=%s', $filePath, $e->getMessage()));
        }
    }
 
    /**
     * 读取上传的Excel文件, 返回array数据
     * @param string $name
     * @return array
     */
    public static function readUploadedFile(string $name = 'file')
    {
        $path = $_FILES[$name]['tmp_name'];
 
        return self::readFile($path);
    }

 

posted on   清清飞扬  阅读(789)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示