Heim > Backend-Entwicklung > PHP-Tutorial > Detaillierte Einführung, wie phpExcel Daten nach Excel exportiert

Detaillierte Einführung, wie phpExcel Daten nach Excel exportiert

不言
Freigeben: 2023-04-04 21:30:02
nach vorne
7763 Leute haben es durchsucht

Dieser Artikel bietet Ihnen eine detaillierte Einführung in den Export von Daten nach Excel. Freunde in Not können darauf zurückgreifen.

Installieren Sie die Klassenbibliothek

Laden Sie die PHPExcel-Klassenbibliothek von GitHub herunter

Adresse: https://github.com/PHPOffice/PHPExcel

Detaillierte Einführung, wie phpExcel Daten nach Excel exportiert

Verschieben Sie nach dem Entpacken den Ordner „Classes“ in das Erweiterungsverzeichnis von ThinkPHP und benennen Sie ihn in phpexcel um

Detaillierte Einführung, wie phpExcel Daten nach Excel exportiert

Detaillierte Einführung, wie phpExcel Daten nach Excel exportiert

Fügen Sie bei Bedarf im Projekt Referenzen hinzu

import('phpexcel.PHPExcel', EXTEND_PATH);
Nach dem Login kopieren

Code-Implementierung

getProperties()->setCreator(''); //设置创建者
        $obj->getProperties()->setLastModifiedBy(''); //设置修改者
        $obj->getProperties()->setTitle(''); //设置标题
        $obj->getProperties()->setSubject(''); //设置主题
        $obj->getProperties()->setDescription(''); //设置描述
        $obj->getProperties()->setKeywords('');//设置关键词
        $obj->getProperties()->setCategory('');//设置类型

        // 设置当前sheet
        $obj->setActiveSheetIndex(0);

        // 设置当前sheet的名称
        $obj->getActiveSheet()->setTitle('student');

        // 列标
        $list = ['A', 'B', 'C'];

        // 填充第一行数据
        $obj->getActiveSheet()
            ->setCellValue($list[0] . '1', '学号')
            ->setCellValue($list[1] . '1', '姓名')
            ->setCellValue($list[2] . '1', '班级');

        // 填充第n(n>=2, n∈N*)行数据
        $length = count($data);
        for ($i = 0; $i < $length; $i++) {
            $obj->getActiveSheet()->setCellValue($list[0] . ($i + 2), '20190101', \PHPExcel_Cell_DataType::TYPE_STRING);//将其设置为文本格式
            $obj->getActiveSheet()->setCellValue($list[1] . ($i + 2), 'student01');
            $obj->getActiveSheet()->setCellValue($list[2] . ($i + 2), '1班');
        }

        // 设置加粗和左对齐
        foreach ($list as $col) {
            // 设置第一行加粗
            $obj->getActiveSheet()->getStyle($col . '1')->getFont()->setBold(true);
            // 设置第1-n行,左对齐
            for ($i = 1; $i <= $length + 1; $i++) {
                $obj->getActiveSheet()->getStyle($col . $i)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_LEFT);
            }
        }

        // 设置列宽
        $obj->getActiveSheet()->getColumnDimension('A')->setWidth(20);
        $obj->getActiveSheet()->getColumnDimension('B')->setWidth(20);
        $obj->getActiveSheet()->getColumnDimension('C')->setWidth(15);

        // 导出
        ob_clean();
        if ($fileType == 'xls') {
            header('Content-Type: application/vnd.ms-excel');
            header('Content-Disposition: attachment;filename="' . $fileName . '.xls');
            header('Cache-Control: max-age=1');
            $objWriter = new \PHPExcel_Writer_Excel5($obj);
            $objWriter->save('php://output');
            exit;
        } elseif ($fileType == 'xlsx') {
            header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
            header('Content-Disposition: attachment;filename="' . $fileName . '.xlsx');
            header('Cache-Control: max-age=1');
            $objWriter = \PHPExcel_IOFactory::createWriter($obj, 'Excel2007');
            $objWriter->save('php://output');
            exit;
        }
    }


    // 准备数据
    protected function getData()
    {
        $studentList = [
            [
                'stuNo' => '20190101',
                'name' => 'student01',
                'class' => '1班'
            ], [
                'stuNo' => '20190102',
                'name' => 'student02',
                'class' => '1班'
            ], [
                'stuNo' => '20190103',
                'name' => 'student03',
                'class' => '1班'
            ]
        ];

        return $studentList;
    }
}
Nach dem Login kopieren

Ausführen

Browserzugriff http:// 127.0.0.1 :8083/index/excel/exportExcel Laden Sie die Excel-Datei herunter

Detaillierte Einführung, wie phpExcel Daten nach Excel exportiert

Öffnen Sie die Datei wie folgt:

Detaillierte Einführung, wie phpExcel Daten nach Excel exportiert

Sie können Sehen Sie es sich an Die Daten in Excel stimmen mit den Daten im PHP-Array überein!

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung, wie phpExcel Daten nach Excel exportiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:cnblogs.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage