如何使用PHPExcel打开Excel文件进​​行读写?

Pet*_*uza 31 php phpexcel

我正在使用PHPExcel库,我正在创建用于写入或读取的xls对象:

PHPExcel_IOFactory::createReaderForFile('file.xlsx')
PHPExcel_IOFactory::createWriter('Excel2007')

如何打开XLSX文件进行读写?

Mar*_*ker 54

您使用reader和load()方法将文件加载到PHPExcel中,然后使用writer和save()方法保存该文件......但是PHPExcel本身并不知道PHPExcel对象的来源...它没有'关心您是从文件(或什么类型的文件)加载它或手动创建它.

因此,没有"打开读/写"的概念.您只需按名称读取文件,并保存为相同的文件名.这将使用您在脚本中所做的任何更改覆盖原始文件.

编辑

error_reporting(E_ALL);
set_time_limit(0);

date_default_timezone_set('Europe/London');
set_include_path(get_include_path() . PATH_SEPARATOR . './Classes/');

include 'PHPExcel/IOFactory.php';

$fileType = 'Excel5';
$fileName = 'testFile.xls';

// Read the file
$objReader = PHPExcel_IOFactory::createReader($fileType);
$objPHPExcel = $objReader->load($fileName);

// Change the file
$objPHPExcel->setActiveSheetIndex(0)
            ->setCellValue('A1', 'Hello')
            ->setCellValue('B1', 'World!');

// Write the file
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, $fileType);
$objWriter->save($fileName);
Run Code Online (Sandbox Code Playgroud)

我可以建议您阅读文档,并查看/ Tests中的示例代码

  • 你能写一些示例代码来解释这个吗?我不明白当你说`使用reader和load()方法,然后使用writer和save()方法保存该文件时,你正在谈论两个不同的对象,(一个读者,一个作家)但是我需要打开文件,修改一些单元格并将同一个对象保存到文件中. (3认同)