1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/happy_source-tpcms

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
phpspreadsheet.md 3.5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 26.11.2024 00:20 a1957ac

Использование phpoffice/phpspreadsheet

# Установка exit-zip расширения
sudo port install php74-zip php74-iconv
# Установка phpoffice/phpspreadsheet
# Внимание: версия PHP
composer require phpoffice/phpspreadsheet:1.19.0

Пример использования phpoffice/phpspreadsheet

Создание

require 'vendor/autoload.php'; // Composer автоматически загружает файл

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

// Создаём новый объект Spreadsheet
$spreadsheet = new Spreadsheet();

// Получаем текущий активный лист
$sheet = $spreadsheet->getActiveSheet();

// Записываем данные в указанную ячейку
$sheet->setCellValue('A1', 'Hello');
$sheet->setCellValue('B1', 'World!');

// Сохраняем файл как Excel (.xlsx)
$writer = new Xlsx($spreadsheet);
$writer->save('hello_world.xlsx');

echo "Файл Excel создан!";
require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\Cell\Coordinate;

// Создаем новый объект Spreadsheet
$spreadsheet = new Spreadsheet();

// Получаем текущий активный рабочий лист
$sheet = $spreadsheet->getActiveSheet();

// Подготавливаем данные для записи
$data = [
    ['Name', 'Age', 'Gender'],
    ['John Doe', 28, 'Male'],
    ['Jane Smith', 22, 'Female'],
    ['Sam Brown', 31, 'Male']
];

// Записываем данные
for ($row = 1; $row <= count($data); $row++) {
    for ($col = 1; $col <= count($data[$row - 1]); $col++) {
        // Генерируем идентификатор ячейки (например, A1, B1, C1...)
        $cell = Coordinate::stringFromColumnIndex($col) . $row;
        // Записываем в ячейку
        $sheet->setCellValue($cell, $data[$row - 1][$col - 1]);
    }
}

// Создаем файл Xlsx и сохраняем
$writer = new Xlsx($spreadsheet);
$writer->save('example_with_loop.xlsx');

echo "Файл успешно создан!";

Чтение

require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\IOFactory;

// Загружаем файл Excel
$spreadsheet = IOFactory::load('hello_world.xlsx');

// Получаем активный рабочий лист
$sheet = $spreadsheet->getActiveSheet();

// Читаем значение ячейки
$cellValue = $sheet->getCell('A1')->getValue();
echo "Значение A1: " . $cellValue . "\n";

$cellValueB1 = $sheet->getCell('B1')->getValue();
echo "Значение B1: " . $cellValueB1 . "\n";

Модификация

require 'vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\IOFactory;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

// Загрузка существующего файла Excel
$spreadsheet = IOFactory::load('hello_world.xlsx');

// Получение активного рабочего листа
$sheet = $spreadsheet->getActiveSheet();

// Изменение данных ячейки
$sheet->setCellValue('A1', 'Привет, PhpSpreadsheet!');
$sheet->setCellValue('B1', 'Отредактированный контент');

// Сохранение изменённого файла
$writer = new Xlsx($spreadsheet);
$writer->save('hello_world_edited.xlsx');

echo "Файл отредактирован и сохранён успешно!";

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/happy_source-tpcms.git
git@api.gitlife.ru:oschina-mirror/happy_source-tpcms.git
oschina-mirror
happy_source-tpcms
happy_source-tpcms
master