PHPExcel

作者admin

8月 7, 2024

PHPExcel 是一个 PHP 库,用于读取、写入和操作 Excel 文件。它支持多种 Excel 文件格式,包括 .xls.xlsx,以及其他类似格式的文件。

注:它已经被 PhpSpreadsheet 所取代,PhpSpreadsheetPHPExcel 的继任者,并提供了更多功能和更好的性能。

PHPExcel 的主要功能

  1. 读取 Excel 文件:
    • 可以从 Excel 文件中读取数据,包括 .xls.xlsx 文件格式。
    • 支持读取工作簿、工作表、单元格数据等。
  2. 写入 Excel 文件:
    • 可以将数据写入 Excel 文件,并保存为 .xls.xlsx 格式。
    • 支持创建新工作簿、工作表,并向单元格中写入数据。
  3. 操作 Excel 文件:
    • 支持修改现有的 Excel 文件,包括添加、删除和修改工作表。
    • 可以设置单元格的样式(如字体、颜色、边框、对齐方式等)。
  4. 格式支持:
    • 支持多种 Excel 格式,如 .xls.xlsx.csv 等。
    • 还支持一些特殊的格式,如日期和时间格式、货币格式等。
  5. 其他功能:
    • 可以创建图表。
    • 支持公式和函数计算。
    • 可以设置单元格的公式。

PHPExcel 的基本用法

1. 安装

PHPExcel 通常通过 Composer 安装

composer require phpoffice/phpexcel

2. 读取 Excel 文件

<?php
require ‘vendor/autoload.php’;

use PHPExcel_IOFactory;

$inputFileName = ‘path/to/existing-file.xlsx’;
$objPHPExcel = PHPExcel_IOFactory::load($inputFileName);

$sheet = $objPHPExcel->getActiveSheet();
$data = $sheet->toArray(null, true, true, true);

// 输出数据
print_r($data);
?>

3. 写入 Excel 文件

<?php
require ‘vendor/autoload.php’;

use PHPExcel;
use PHPExcel_Writer_Excel2007;

// 创建新的 Excel 对象
$objPHPExcel = new PHPExcel();
$sheet = $objPHPExcel->getActiveSheet();

// 设置数据
$sheet->setCellValue(‘A1’, ‘Hello’);
$sheet->setCellValue(‘B1’, ‘World’);

// 保存 Excel 文件
$writer = new PHPExcel_Writer_Excel2007($objPHPExcel);
$writer->save(‘path/to/new-file.xlsx’);
?>

4. 设置单元格样式

<?php
require ‘vendor/autoload.php’;

use PHPExcel;
use PHPExcel_Writer_Excel2007;
use PHPExcel_Style_Alignment;
use PHPExcel_Style_Fill;
use PHPExcel_Style_Font;

// 创建新的 Excel 对象
$objPHPExcel = new PHPExcel();
$sheet = $objPHPExcel->getActiveSheet();

// 设置数据
$sheet->setCellValue(‘A1’, ‘Styled Text’);

// 设置单元格样式
$sheet->getStyle(‘A1’)->applyFromArray(array(
‘font’ => array(
‘bold’ => true,
‘color’ => array(‘rgb’ => ‘FF0000’),
‘size’ => 15,
‘name’ => ‘Verdana’
),
‘fill’ => array(
‘type’ => PHPExcel_Style_Fill::FILL_SOLID,
‘color’ => array(‘rgb’ => ‘FFFF00’)
),
‘alignment’ => array(
‘horizontal’ => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
‘vertical’ => PHPExcel_Style_Alignment::VERTICAL_CENTER
)
));

// 保存 Excel 文件
$writer = new PHPExcel_Writer_Excel2007($objPHPExcel);
$writer->save(‘path/to/styled-file.xlsx’);
?>

注意事项

  • 已弃用: PHPExcel 在 2017 年停止更新,建议使用 PhpSpreadsheet 作为替代。PhpSpreadsheet 提供了更好的性能和更多的功能,并且是 PHPExcel 的官方继任者。
  • 性能: 对于大型文件操作,PHPExcel 可能会比较慢,PhpSpreadsheet 在性能上有很大的改进。

作者 admin

百度广告效果展示