Как открыть файл Excel с PHPExcel для чтения и записи? - PullRequest
31 голосов
/ 10 января 2012

Я использую библиотеку PHPExcel и создаю объекты xls либо для записи, либо для чтения:

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

Как открыть файл XLSX для чтения и записи?

1 Ответ

54 голосов
/ 10 января 2012

Вы загружаете файл в PHPExcel, используя ридер и метод load (), затем сохраняете этот файл, используя писатель и метод 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);

И могу ли я предложитьчто вы прочитали документацию и посмотрите пример кода в / Tests

...