Chuyển đổi các bảng tính ODS sang XLSX là một yêu cầu thường gặp khi tích hợp tài liệu văn phòng vào các ứng dụng web, đặc biệt khi các hệ thống hạ nguồn chỉ chấp nhận định dạng Microsoft Excel. GroupDocs.Conversion Cloud SDK for PHP cung cấp một API đáng tin cậy, chạy phía máy chủ, xử lý chuyển đổi này với độ chính xác cao. Trong hướng dẫn này, bạn sẽ học cách thiết lập SDK, thực hiện chuyển đổi đầy đủ, đo hiệu năng và áp dụng các thực tiễn tốt nhất để xử lý nhanh chóng, tiết kiệm bộ nhớ.

Các bước chuyển đổi ODS sang XLSX trong PHP

  1. Cài đặt SDK qua Composer - Chạy composer require groupdocs-conversion-cloud để thêm thư viện vào dự án của bạn.
  2. Cấu hình thông tin xác thực API - Tạo một đối tượng Configuration với client ID và secret của bạn, sau đó khởi tạo ConversionApi. Xem API reference để biết chi tiết lớp.
  3. Tải lên tệp nguồn ODS - Sử dụng endpoint UploadFile để lưu trữ tệp trong bộ nhớ đám mây GroupDocs.
  4. Tạo cài đặt chuyển đổi - Đặt outputFormat thành XLSX và điều chỉnh bất kỳ tham số tùy chọn nào như preserveFormatting.
  5. Thực thi chuyển đổi - Gọi convertDocument với ID tệp đã tải lên và đối tượng cài đặt.
  6. Tải xuống kết quả XLSX - Lấy tệp đã chuyển đổi bằng endpoint DownloadFile và lưu nó cục bộ.

Những bước này minh họa quy trình ODS to XLSX conversion in PHP cốt lõi trong khi giữ mức sử dụng bộ nhớ thấp và thời gian thực thi ngắn.

Mẫu PHP ODS sang XLSX - Ví dụ mã hoàn chỉnh

Ví dụ sau đây trình bày quá trình chuyển đổi toàn diện từ đầu đến cuối bằng cách sử dụng 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. Cấu hình thông tin xác thực API (thay thế bằng giá trị của bạn)
// ---------------------------------------------------------------------
$config = new Configuration();
$config->setAppSid('YOUR_CLIENT_ID');
$config->setAppKey('YOUR_CLIENT_SECRET');

// ---------------------------------------------------------------------
// 2. Initialize the Conversion API
// ---------------------------------------------------------------------
$conversionApi = new ConversionApi($config);

// ——————————————————————— // 3. Tải lên tệp ODS lên lưu trữ đám mây của GroupDocs // ——————————————————————— $uploadResponse = $conversionApi->uploadFile( new StorageFile([‘path’ => ‘sample.ods’, ‘file’ => fopen(‘sample.ods’, ‘rb’)]) ); $sourcePath = $uploadResponse->getPath();


// ---------------------------------------------------------------------
// 4. Đặt tùy chọn chuyển đổi (định dạng đầu ra XLSX)
// ---------------------------------------------------------------------
$convertSettings = new ConvertSettings();
$convertSettings->setOutputFormat('XLSX');
$convertSettings->setFilePath($sourcePath);

// ——————————————————————— // 5. Thực hiện chuyển đổi // ——————————————————————— $convertResponse = $conversionApi->convertDocument($convertSettings); $downloadUrl = $convertResponse->getUrl();


// ---------------------------------------------------------------------
// 6. Tải xuống tệp XLSX đã chuyển đổi
// ---------------------------------------------------------------------
$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”;

<!--[COMPLETE_CODE_SNIPPET_END]-->

> **Lưu ý:** Ví dụ mã này minh họa chức năng cốt lõi. Trước khi sử dụng trong dự án của bạn, hãy chắc chắn cập nhật các đường dẫn tệp (`sample.ods`, `output.xlsx`) sao cho phù hợp với vị trí tệp thực tế của bạn, xác minh rằng tất cả các phụ thuộc cần thiết đã được cài đặt đúng cách, và kiểm tra kỹ lưỡng trong môi trường phát triển. Nếu bạn gặp bất kỳ vấn đề nào, vui lòng tham khảo [tài liệu chính thức](https://docs.groupdocs.cloud/conversion/) hoặc liên hệ với [đội hỗ trợ](https://forum.groupdocs.cloud/c/conversion/11) để được trợ giúp.

## Chuyển Đổi Bảng Tính Dựa Trên Đám Mây qua REST API sử dụng cURL
Bạn cũng có thể thực hiện cùng một chuyển đổi mà không cần viết mã PHP bằng cách gọi các endpoint REST trực tiếp.

1. **Lấy token truy cập**  
   <!--[CODE_SNIPPET_START]-->
   ```bash
   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"}'
  1. Tải lên tệp 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"
    
  2. Bắt đầu chuyển đổi

    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"}'
    
  3. Tải xuống kết quả 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
    

Để xem danh sách đầy đủ các endpoint và tham số, hãy tham khảo tài liệu API chính thức.

Cài đặt và Thiết lập trong PHP

  1. Cài đặt gói
    composer require groupdocs-conversion-cloud
    
  2. Tải xuống SDK - Bản phát hành mới nhất có sẵn tại trang tải xuống.
  3. Cấu hình thông tin xác thực - Tạo một đối tượng Configuration với client_idclient_secret của bạn.
  4. Thiết lập ghi nhật ký (tùy chọn) - SDK có thể ghi nhật ký yêu cầu vào tệp; bật tính năng này trong cấu hình nếu bạn cần nhật ký chuyển đổi chi tiết.
  5. Áp dụng giấy phép - Đối với việc sử dụng trong môi trường sản xuất, mua giấy phép và áp dụng nó như mô tả trên trang giấy phép.

Ví dụ chuyển đổi ODS sang XLSX trong PHP với GroupDocs.Conversion

GroupDocs.Conversion Cloud thực hiện các công việc nặng trong việc phân tích tệp ODS, ánh xạ các kiểu cell và tạo ra một sổ làm việc XLSX tuân thủ tiêu chuẩn. Kiến trúc dựa trên đám mây loại bỏ nhu cầu cài đặt Office cục bộ và đảm bảo kết quả nhất quán trên các nền tảng. Ví dụ này minh họa cách một lời gọi API duy nhất có thể thay thế quy trình làm việc đa bước trên máy tính để bàn.

Các tính năng của GroupDocs.Conversion quan trọng cho nhiệm vụ này

  • Full ODS support - Tất cả dữ liệu ô, công thức và định dạng được giữ nguyên.
  • High conversion speed - Xử lý phía máy chủ được tối ưu mang lại kết quả trong thời gian dưới sub‑giây cho các tệp thông thường.
  • Low memory footprint - Dịch vụ truyền dữ liệu theo luồng, giữ mức sử dụng bộ nhớ dưới 50 MB ngay cả với các bảng tính lớn.
  • Conversion logging - Các nhật ký chi tiết có sẵn thông qua đối tượng phản hồi và tùy chọn ghi nhật ký phía máy chủ.
  • Extensive documentation - Tài liệu tham khảo và các mẫu mã được cung cấp trong tài liệu chính thức.

Cấu hình tùy chọn chuyển đổi cho ODS sang XLSX

Bạn có thể tinh chỉnh quá trình chuyển đổi bằng cách điều chỉnh mô hình ConvertSettings:

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

Các tùy chọn này cho phép bạn kiểm soát việc giữ định dạng gốc, nhúng mật khẩu hoặc giới hạn việc chuyển đổi cho các trang tính cụ thể.

Tối ưu hóa tốc độ và việc sử dụng bộ nhớ khi chuyển đổi ODS sang XLSX

Dưới đây là một phép đo hiệu năng được thực hiện trên một máy chủ t3.medium điển hình của AWS.

Kích thước tệpThời gian chuyển đổiBộ nhớ tối đa
0.5 MB0.42 s32 MB
1 MB0.68 s38 MB
5 MB1.95 s45 MB
10 MB3.80 s52 MB

Mẹo để cải thiện hiệu suất

  • Nén tệp ODS nguồn trước khi tải lên để giảm độ trễ mạng.
  • Tái sử dụng cùng một thể hiện ConversionApi cho nhiều tệp để tránh việc xác thực lặp lại.
  • Vô hiệu hoá các tính năng không cần thiết như trích xuất hình ảnh khi không cần.

Các thực hành tốt nhất để chuyển đổi ODS sang XLSX đáng tin cậy trong PHP

  • Xác thực tệp đầu vào - Đảm bảo tệp ODS được định dạng đúng trước khi gửi tới API.
  • Xử lý lỗi một cách nhẹ nhàng - Kiểm tra phản hồi API để tìm mã lỗi và ghi lại requestId để khắc phục.
  • Sử dụng streaming cho tệp lớn - Tải lên và tải xuống tệp dưới dạng stream để giảm mức sử dụng bộ nhớ.
  • Kiểm thử các trường hợp biên - Xác minh công thức, ô hợp nhất và kiểu dáng tùy chỉnh để tránh mất dữ liệu.
  • Giám sát nhật ký chuyển đổi - Bật ghi nhật ký phía máy chủ để thu thập các chỉ số hiệu suất và bất kỳ cảnh báo chuyển đổi nào.

Kết luận

Việc chuyển đổi ODS sang XLSX trong PHP rất đơn giản với GroupDocs.Conversion Cloud SDK for PHP. SDK cung cấp xử lý nhanh, tiết kiệm bộ nhớ, ghi log toàn diện và tài liệu chi tiết giúp bạn xây dựng quy trình làm việc bảng tính mạnh mẽ. Hãy nhớ lấy giấy phép phù hợp cho việc sử dụng trong môi trường sản xuất; chi tiết giá cả có trên trang sản phẩm, và bạn có thể yêu cầu giấy phép tạm thời từ trang giấy phép tạm thời. Bắt đầu tích hợp chuyển đổi ngay hôm nay và tối ưu hoá quy trình tài liệu của bạn.

Câu hỏi thường gặp

  • Tốc độ chuyển đổi ODS sang XLSX điển hình trong PHP là bao nhiêu?
    Đối với các tệp lên tới 5 MB, quá trình chuyển đổi thường hoàn thành trong vòng chưa tới 2 giây, như được hiển thị trong bảng benchmark. Các tệp lớn hơn tăng tỷ lệ một cách tuyến tính, nhưng dịch vụ đám mây vẫn duy trì mức tiêu thụ bộ nhớ thấp.

  • Làm thế nào tôi có thể ghi lại chi tiết chuyển đổi để kiểm toán?
    SDK trả về một requestId và các dấu thời gian trong đối tượng phản hồi. Bạn cũng có thể bật ghi log phía máy chủ trong cài đặt tài khoản để ghi lại toàn bộ payload của yêu cầu và phản hồi.

  • Tôi có thể tìm tài liệu tham khảo API cho cài đặt chuyển đổi ở đâu?
    Tất cả các mô hình, bao gồm ConvertSettings, được tài liệu hoá trong tài liệu tham khảo API chính thức. Tài liệu này cung cấp các ví dụ cho mỗi tùy chọn có thể cấu hình.

  • Có cách nào để thử SDK mà không mua giấy phép không?
    Có, bạn có thể yêu cầu giấy phép tạm thời từ trang giấy phép tạm thời. Điều này cho phép bạn đánh giá các tính năng chuyển đổi trước khi cam kết mua gói trả phí.

Read More