Привет, коллеги-разработчики PHP! У меня для вас новости: популярный пакет «phpoffice/phpexcel» удален. Да, я знаю, это облом. Но не волнуйтесь! У нас есть для вас лучшая альтернатива: «phpoffice/phpspreadsheet». Поверьте мне, это реально, когда дело доходит до управления электронными таблицами в PHP. Итак, давайте углубимся и рассмотрим некоторые методы плавного перехода с PHPExcel на PhpSpreadsheet.
Прежде всего, вам необходимо убедиться, что у вас установлен PhpSpreadsheet. Вы можете установить его с помощью Composer, выполнив следующую команду:
composer require phpoffice/phpspreadsheet
После того как PhpSpreadsheet настроен и запущен, давайте рассмотрим некоторые методы, которые вы можете использовать для переноса вашего кода.
-
Загрузка и сохранение таблиц:
-
PHPExcel:
$objPHPExcel = PHPExcel_IOFactory::load('path/to/file.xlsx'); $objPHPExcel->getActiveSheet()->setCellValue('A1', 'Hello World!'); $objPHPExcel->getActiveSheet()->setTitle('My Sheet'); $objPHPExcel->getActiveSheet()->setCellValue('A2', 'This is PhpExcel.'); $objPHPExcel->getActiveSheet()->setCellValue('A3', 'It is deprecated.'); $objPHPExcel->getActiveSheet()->setCellValue('A4', 'Time to switch!'); $objPHPExcel->getActiveSheet()->setCellValue('A5', 'Goodbye, PHPExcel!'); $objPHPExcel->getActiveSheet()->setCellValue('A6', 'Hello, PhpSpreadsheet!'); $objPHPExcel->getActiveSheet()->setTitle('My New Sheet'); $objPHPExcel->save('path/to/new_file.xlsx');
-
PhpSpreadsheet:
use PhpOffice\PhpSpreadsheet\IOFactory; use PhpOffice\PhpSpreadsheet\Spreadsheet; $spreadsheet = IOFactory::load('path/to/file.xlsx'); $sheet = $spreadsheet->getActiveSheet(); $sheet->setCellValue('A1', 'Hello World!'); $sheet->setTitle('My Sheet'); $sheet->setCellValue('A2', 'This is PhpSpreadsheet.'); $sheet->setCellValue('A3', 'It is awesome.'); $sheet->setCellValue('A4', 'No more PHPExcel!'); $sheet->setCellValue('A5', 'Hello, PhpSpreadsheet!'); $sheet->setTitle('My New Sheet'); $writer = IOFactory::createWriter($spreadsheet, 'Xlsx'); $writer->save('path/to/new_file.xlsx');
-
-
Чтение и запись данных ячейки:
-
PHPExcel:
$cellValue = $objPHPExcel->getActiveSheet()->getCell('A1')->getValue(); $objPHPExcel->getActiveSheet()->setCellValue('B1', $cellValue);
-
PhpSpreadsheet:
$cellValue = $sheet->getCell('A1')->getValue(); $sheet->setCellValue('B1', $cellValue);
-
-
Настройка стилей ячеек:
-
PHPExcel:
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true); $objPHPExcel->getActiveSheet()->getStyle('B1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
-
PhpSpreadsheet:
$sheet->getStyle('A1')->getFont()->setBold(true); $sheet->getStyle('B1')->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
-
-
Работа с формулами:
-
PHPExcel:
$objPHPExcel->getActiveSheet()->setCellValue('C1', '=SUM(A1:B1)');
-
PhpSpreadsheet:
$sheet->setCellValue('C1', '=SUM(A1:B1)');
-
Помните, что это всего лишь несколько примеров, с которых можно начать. PhpSpreadsheet предлагает широкий спектр функций и методов, которые вы можете изучить в официальной документации.
Итак, давайте попрощаемся с PHPExcel и встретим будущее с PhpSpreadsheet. Пришло время обновить ваш код и воспользоваться улучшенными функциями и постоянной поддержкой. Приятного кодирования!