Конвертація ODS електронних таблиць у XLSX є частою вимогою при інтеграції офісних документів у веб‑застосунки, особливо коли нижчестоящі системи приймають лише формати Microsoft Excel. GroupDocs.Conversion Cloud SDK for PHP надає надійний сервер‑бічний API, який виконує це перетворення з високою точністю. У цьому посібнику ви дізнаєтеся, як налаштувати SDK, виконати повну конвертацію, оцінити продуктивність та застосувати кращі практики для швидкої та пам’яттєво‑ефективної обробки.

Кроки конвертації ODS у XLSX у PHP

  1. Встановіть SDK через Composer - Виконайте composer require groupdocs-conversion-cloud, щоб додати бібліотеку до вашого проєкту.
  2. Налаштуйте облікові дані API - Створіть об’єкт Configuration з вашим client ID та secret, потім створіть екземпляр ConversionApi. Дивіться API reference для деталей класу.
  3. Завантажте вихідний файл ODS - Використайте endpoint UploadFile, щоб зберегти файл у хмарному сховищі GroupDocs.
  4. Створіть налаштування конвертації - Встановіть outputFormat у XLSX і за потреби налаштуйте додаткові параметри, такі як preserveFormatting.
  5. Виконайте конвертацію - Викличте convertDocument з ідентифікатором завантаженого файлу та об’єктом налаштувань.
  6. Завантажте результат у форматі XLSX - Отримайте конвертований файл за допомогою endpoint DownloadFile і збережіть його локально.

Ці кроки ілюструють основний перетворення ODS у XLSX у PHP робочий процес, при цьому зберігаючи низьке використання пам’яті та короткий час виконання.

PHP ODS до XLSX приклад — повний код

Наступний приклад демонструє повну конверсію від початку до кінця з використанням GroupDocs.Conversion Cloud SDK for PHP.

<?php
require 'vendor/autoload.php';

use GroupDocsConversionCloud\Configuration; use GroupDocsConversionCloud\Api\ConversionApi; use GroupDocsConversionCloud\Models\ConvertSettings; use GroupDocsConversionCloud\Models\StorageFile;

// ——————————————————————— // 1. Configure API credentials (replace with your own values) // ——————————————————————— $config = new Configuration(); $config->setAppSid(‘YOUR_CLIENT_ID’); $config->setAppKey(‘YOUR_CLIENT_SECRET’);

// ——————————————————————— // 2. Ініціалізуйте Conversion API // ——————————————————————— $conversionApi = new ConversionApi($config);

// ---------------------------------------------------------------------
// 3. Завантажте файл ODS у хмарне сховище GroupDocs
// ---------------------------------------------------------------------
$uploadResponse = $conversionApi->uploadFile(
    new StorageFile(['path' => 'sample.ods', 'file' => fopen('sample.ods', 'rb')])
);
$sourcePath = $uploadResponse->getPath();
// ---------------------------------------------------------------------
// 4. Встановити параметри конвертації (формат виводу XLSX)
// ---------------------------------------------------------------------
$convertSettings = new ConvertSettings();
$convertSettings->setOutputFormat('XLSX');
$convertSettings->setFilePath($sourcePath);

// ——————————————————————— // 5. Perform the conversion // ——————————————————————— $convertResponse = $conversionApi->convertDocument($convertSettings); $downloadUrl = $convertResponse->getUrl();

// ---------------------------------------------------------------------
// 6. Завантажте конвертований файл XLSX
// ---------------------------------------------------------------------
$targetFile = fopen('output.xlsx', 'wb');
$ch = curl_init($downloadUrl);
curl_setopt($ch, CURLOPT_FILE, $targetFile);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_exec($ch);
curl_close($ch);
fclose($targetFile);
echo "Conversion completed. File saved as output.xlsx\n";

Примітка: Цей приклад коду демонструє основну функціональність. Перш ніж використовувати його у вашому проєкті, переконайтеся, що оновили шляхи до файлів (sample.ods, output.xlsx) відповідно до фактичних розташувань, перевірте, чи всі необхідні залежності встановлені правильно, і ретельно протестуйте у вашому середовищі розробки. Якщо ви зіткнетеся з будь‑якими проблемами, будь ласка, зверніться до офіційної документації або до команди підтримки за допомогою.

Конвертація електронних таблиць у хмарі за допомогою REST API та cURL

Ви також можете виконати ту ж конвертацію без написання коду PHP, викликаючи REST‑ендпоінти безпосередньо.

  1. Отримати токен доступу

    curl -X POST "https://api.groupdocs.cloud/v2.0/oauth2/token" \
         -H "Content-Type: application/json" \
         -d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'
    
  2. Завантажте файл ODS

    curl -X POST "https://api.groupdocs.cloud/v2.0/storage/file/upload?path=sample.ods" \
         -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
         -F "file=@sample.ods"
    
  3. Почати конвертацію

    curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/convert" \
         -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
         -H "Content-Type: application/json" \
         -d '{"inputPath":"sample.ods","outputFormat":"XLSX"}'
    
  4. Завантажте результат XLSX

    curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/download?path=sample.xlsx" \
         -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
         -o output.xlsx
    

Для повного списку кінцевих точок та параметрів перегляньте офіційну документацію API.

Встановлення та налаштування в PHP

  1. Встановіть пакет
    composer require groupdocs-conversion-cloud
    
  2. Завантажте SDK - Останній випуск доступний на сторінці завантаження.
  3. Налаштуйте облікові дані - Створіть об’єкт Configuration з вашими client_id та client_secret.
  4. Налаштування журналювання (необов’язково) - SDK може записувати журнали запитів у файл; увімкніть це в конфігурації, якщо вам потрібні докладні журнали конвертації.
  5. Застосуйте ліцензію - Для використання у продакшн, придбайте ліцензію та застосуйте її, як описано на сторінці ліцензії.

Приклад конвертації ODS у XLSX у PHP за допомогою GroupDocs.Conversion

GroupDocs.Conversion Cloud виконує складну роботу з розбору ODS‑файлів, зіставлення стилів cell та створення XLSX‑книги, що відповідає стандартам. Хмарна архітектура усуває необхідність у локальних встановленнях Office і гарантує послідовні результати на різних платформах. Цей приклад демонструє, як один виклик API може замінити багатокроковий робочий процес на настільному комп’ютері.

GroupDocs.Conversion Features That Matter For This Task

  • Full ODS support - Всі дані клітинок, формули та форматування зберігаються.
  • High conversion speed - Оптимізована обробка на боці сервера забезпечує результати за підсекунду для типових файлів.
  • Low memory footprint - Сервіс передає дані у потоковому режимі, підтримуючи використання пам’яті нижче 50 MB навіть для великих електронних таблиць.
  • Conversion logging - Детальні журнали доступні через об’єкт відповіді та необов’язкове логування на боці сервера.
  • Extensive documentation - Довідкові матеріали та приклади коду надаються в офіційній документації.

Налаштування параметрів конвертації ODS у XLSX

Ви можете точно налаштувати конвертацію, відкоригувавши модель ConvertSettings:

$convertSettings = new ConvertSettings();
$convertSettings->setOutputFormat('XLSX');
$convertSettings->setPreserveCellFormatting(true);
$convertSettings->setPassword('optionalPassword'); // if the source ODS is protected

Ці параметри дозволяють вам контролювати, чи зберігати оригінальне форматування, вбудовувати паролі або обмежувати конвертацію певними листами.

Оптимізація швидкості та використання пам’яті при конвертації ODS у XLSX

Нижче наведено бенчмарк, виконаний на типічному інстансі AWS t3.medium.

Розмір файлуЧас конвертаціїПікове використання пам’яті
0.5 MB0.42 s32 MB
1 MB0.68 s38 MB
5 MB1.95 s45 MB
10 MB3.80 s52 MB

Поради щодо підвищення продуктивності

  • Стисніть вихідний ODS перед завантаженням, щоб зменшити затримку мережі.
  • Використовуйте один і той же екземпляр ConversionApi для кількох файлів, щоб уникнути повторної автентифікації.
  • Вимикайте непотрібні функції, такі як витяг зображень, коли вони не потрібні.

Кращі практики надійного перетворення ODS у XLSX у PHP

  • Перевіряти вхідні файли - Переконайтеся, що файл ODS правильно сформований перед відправкою його до API.
  • Коректно обробляти помилки - Перевіряйте відповідь API на коди помилок і реєструйте requestId для усунення проблем.
  • Використовувати потокову передачу для великих файлів - Завантажуйте та завантажуйте файли як потоки, щоб знизити використання пам’яті.
  • Тестувати крайові випадки - Перевіряйте формули, об’єднані клітинки та користувацькі стилі, щоб уникнути втрати даних.
  • Моніторити журнали конвертації - Увімкніть серверне журналювання, щоб фіксувати метрики продуктивності та будь‑які попередження під час конвертації.

Висновок

Конвертування ODS у XLSX у PHP просте за допомогою GroupDocs.Conversion Cloud SDK for PHP. SDK пропонує швидку, пам’яттєво‑ефективну обробку, всебічне журналювання та докладну документацію, які допомагають створювати надійні робочі процеси з електронними таблицями. Не забудьте отримати належну ліцензію для використання у продакшн‑середовищі; деталі ціноутворення доступні на сторінці продукту, а тимчасову ліцензію можна запросити на сторінці тимчасової ліцензії. Почніть інтегрувати конвертацію вже сьогодні та оптимізуйте свої документообігові процеси.

Питання та відповіді

  • Яка типова швидкість конвертації ODS у XLSX у PHP?
    Для файлів розміром до 5 МБ конвертація зазвичай завершується менш ніж за 2 секунди, як показано в таблиці бенчмарку. Більші файли масштабуються лінійно, але хмарний сервіс зберігає низьке споживання пам’яті.

  • Як я можу вести журнал деталей конвертації для аудиту?
    SDK повертає requestId та мітки часу у об’єкті відповіді. Ви також можете ввімкнути серверне журналювання у налаштуваннях вашого облікового запису, щоб захоплювати повні дані запиту та відповіді.

  • Де можна знайти API reference для налаштувань конвертації?
    Усі моделі, включаючи ConvertSettings, задокументовані в офіційному API reference. У референсі наведено приклади для кожної налаштовуваної опції.

  • Чи є спосіб протестувати SDK без придбання ліцензії?
    Так, ви можете запросити тимчасову ліцензію на сторінці тимчасової ліцензії. Це дозволяє оцінити функції конвертації перед переходом на платний план.

Read More