Konwertowanie arkuszy kalkulacyjnych ODS na XLSX jest częstym wymogiem przy integrowaniu dokumentów biurowych w aplikacjach internetowych, szczególnie gdy systemy downstream akceptują wyłącznie formaty Microsoft Excel. GroupDocs.Conversion Cloud SDK for PHP zapewnia niezawodne API po stronie serwera, które obsługuje tę transformację z wysoką wiernością. W tym przewodniku dowiesz się, jak skonfigurować SDK, przeprowadzić pełną konwersję, zmierzyć wydajność oraz zastosować najlepsze praktyki dla szybkiego i oszczędnego pod względem pamięci przetwarzania.
Kroki konwersji ODS do XLSX w PHP
- Zainstaluj SDK za pomocą Composer - Uruchom
composer require groupdocs-conversion-cloud, aby dodać bibliotekę do swojego projektu. - Skonfiguruj poświadczenia API - Utwórz obiekt
Configurationz identyfikatorem klienta i sekretem, a następnie zainicjalizujConversionApi. Zobacz odniesienie API po szczegóły klasy. - Prześlij plik źródłowy ODS - Użyj punktu końcowego
UploadFile, aby zapisać plik w chmurze GroupDocs. - Utwórz ustawienia konwersji - Ustaw
outputFormatnaXLSXi dostosuj opcjonalne parametry, takie jakpreserveFormatting. - Wykonaj konwersję - Wywołaj
convertDocumentz identyfikatorem przesłanego pliku oraz obiektem ustawień. - Pobierz wynikowy plik XLSX - Pobierz skonwertowany plik przy użyciu punktu końcowego
DownloadFilei zapisz go lokalnie.
Te kroki ilustrują główny przepływ konwersji ODS do XLSX w PHP, jednocześnie utrzymując niskie zużycie pamięci i krótki czas wykonania.
Przykład PHP ODS do XLSX – Pełny kod
Poniższy przykład demonstruje pełną konwersję end‑to‑end przy użyciu GroupDocs.Conversion Cloud SDK dla PHP.
<?php
require 'vendor/autoload.php';
use GroupDocsConversionCloud\Configuration; use GroupDocsConversionCloud\Api\ConversionApi; use GroupDocsConversionCloud\Models\ConvertSettings; use GroupDocsConversionCloud\Models\StorageFile;
// ---------------------------------------------------------------------
// 1. Skonfiguruj poświadczenia API (zastąp własnymi wartościami)
// ---------------------------------------------------------------------
$config = new Configuration();
$config->setAppSid('YOUR_CLIENT_ID');
$config->setAppKey('YOUR_CLIENT_SECRET');
// ——————————————————————— // 2. Zainicjalizuj Conversion API // ——————————————————————— $conversionApi = new ConversionApi($config);
// ——————————————————————— // 3. Upload the ODS file to GroupDocs cloud storage // ——————————————————————— $uploadResponse = $conversionApi->uploadFile( new StorageFile([‘path’ => ‘sample.ods’, ‘file’ => fopen(‘sample.ods’, ‘rb’)]) ); $sourcePath = $uploadResponse->getPath();
// ---------------------------------------------------------------------
// 4. Ustaw opcje konwersji (format wyjściowy XLSX)
// ---------------------------------------------------------------------
$convertSettings = new ConvertSettings();
$convertSettings->setOutputFormat('XLSX');
$convertSettings->setFilePath($sourcePath);
// ——————————————————————— // 5. Wykonaj konwersję // ——————————————————————— $convertResponse = $conversionApi->convertDocument($convertSettings); $downloadUrl = $convertResponse->getUrl();
// ——————————————————————— // 6. Pobierz przekonwertowany plik 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";
Uwaga: Ten przykład kodu demonstruje podstawową funkcjonalność. Przed użyciem go w swoim projekcie upewnij się, że zaktualizowałeś ścieżki do plików (
sample.ods,output.xlsx), aby odpowiadały rzeczywistym lokalizacjom, sprawdź, czy wszystkie wymagane zależności są poprawnie zainstalowane, oraz dokładnie przetestuj w środowisku deweloperskim. Jeśli napotkasz problemy, zapoznaj się z oficjalną dokumentacją lub skontaktuj się z zespołem wsparcia w celu uzyskania pomocy.
Konwersja arkuszy kalkulacyjnych w chmurze przy użyciu REST API i cURL
Możesz również wykonać tę samą konwersję bez pisania kodu PHP, wywołując bezpośrednio endpointy REST.
Uzyskaj token dostępu
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"}'Prześlij plik 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"Rozpocznij konwersję
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"}'Pobierz wynik 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
Aby uzyskać pełną listę punktów końcowych i parametrów, zobacz oficjalną dokumentację API.
Instalacja i konfiguracja w PHP
- Zainstaluj pakiet
composer require groupdocs-conversion-cloud - Pobierz SDK - Najnowsze wydanie jest dostępne na stronie pobierania.
- Skonfiguruj poświadczenia - Utwórz obiekt
Configurationz Twoimclient_idiclient_secret. - Ustaw logowanie (opcjonalnie) - SDK może zapisywać logi żądań do pliku; włącz je w konfiguracji, jeśli potrzebujesz szczegółowych logów konwersji.
- Zastosuj licencję - W środowisku produkcyjnym zakup licencję i zastosuj ją zgodnie z opisem na stronie licencji.
Przykład konwersji ODS do XLSX w PHP z GroupDocs.Conversion
GroupDocs.Conversion Cloud zajmuje się ciężką pracą parsowania plików ODS, mapowaniem stylów cell oraz generowaniem arkusza XLSX zgodnego ze standardami. Architektura oparta na chmurze eliminuje potrzebę lokalnych instalacji Office i zapewnia spójne wyniki na różnych platformach. Ten przykład pokazuje, jak pojedyncze wywołanie API może zastąpić wieloetapowy proces desktopowy.
Funkcje GroupDocs.Conversion, które mają znaczenie dla tego zadania
- Full ODS support - Wszystkie dane komórek, formuły i formatowanie są zachowane.
- High conversion speed - Zoptymalizowane przetwarzanie po stronie serwera zapewnia wyniki w czasie krótszym niż sekunda dla typowych plików.
- Low memory footprint - Usługa strumieniuje dane, utrzymując zużycie pamięci poniżej 50 MB nawet przy dużych arkuszach kalkulacyjnych.
- Conversion logging - Szczegółowe logi są dostępne poprzez obiekt odpowiedzi oraz opcjonalne logowanie po stronie serwera.
- Extensive documentation - Materiały referencyjne i przykłady kodu są dostępne w oficjalnej dokumentacji.
Konfigurowanie opcji konwersji z ODS do XLSX
Możesz precyzyjnie dostroić konwersję, dostosowując model ConvertSettings:
$convertSettings = new ConvertSettings();
$convertSettings->setOutputFormat('XLSX');
$convertSettings->setPreserveCellFormatting(true);
$convertSettings->setPassword('optionalPassword'); // if the source ODS is protected
Te opcje pozwalają kontrolować, czy zachować oryginalne formatowanie, osadzić hasła lub ograniczyć konwersję do określonych arkuszy.
Optymalizacja prędkości konwersji ODS do XLSX i zużycia pamięci
Poniżej znajduje się benchmark przeprowadzony na typowej instancji AWS t3.medium.
| Rozmiar pliku | Czas konwersji | Maksymalna pamięć |
|---|---|---|
| 0.5 MB | 0.42 s | 32 MB |
| 1 MB | 0.68 s | 38 MB |
| 5 MB | 1.95 s | 45 MB |
| 10 MB | 3.80 s | 52 MB |
Wskazówki dotyczące lepszej wydajności
- Skompresuj źródłowy plik ODS przed przesłaniem, aby zmniejszyć opóźnienia sieciowe.
- Ponownie używaj tej samej instancji
ConversionApidla wielu plików, aby uniknąć powtarzającego się obciążenia uwierzytelniania. - Wyłącz niepotrzebne funkcje, takie jak ekstrakcja obrazów, gdy nie są potrzebne.
Najlepsze praktyki zapewniające niezawodną konwersję ODS do XLSX w PHP
- Waliduj pliki wejściowe - Upewnij się, że plik ODS jest poprawnie sformatowany przed wysłaniem go do API.
- Obsługuj błędy w sposób elegancki - Sprawdź odpowiedź API pod kątem kodów błędów i zaloguj
requestIdw celu rozwiązywania problemów. - Używaj strumieniowania dla dużych plików - Przesyłaj i pobieraj pliki jako strumienie, aby utrzymać niskie zużycie pamięci.
- Testuj przypadki brzegowe - Zweryfikuj formuły, scalone komórki i niestandardowe style, aby uniknąć utraty danych.
- Monitoruj logi konwersji - Włącz logowanie po stronie serwera, aby rejestrować metryki wydajności i wszelkie ostrzeżenia dotyczące konwersji.
Podsumowanie
Konwersja ODS do XLSX w PHP jest prosta dzięki GroupDocs.Conversion Cloud SDK for PHP. SDK zapewnia szybkie, oszczędne pod względem pamięci przetwarzanie, kompleksowe logowanie oraz szczegółową dokumentację, które pomagają tworzyć solidne przepływy pracy z arkuszami kalkulacyjnymi. Pamiętaj, aby uzyskać odpowiednią licencję do użytku produkcyjnego; szczegóły cenowe są dostępne na stronie produktu, a tymczasową licencję można zamówić na stronie tymczasowej licencji. Rozpocznij integrację konwersji już dziś i usprawnij swoje przepływy dokumentów.
FAQ
Jaki jest typowy czas konwersji ODS do XLSX w PHP?
Dla plików do 5 MB konwersja zazwyczaj kończy się w mniej niż 2 sekundy, jak pokazuje tabela benchmarkowa. Większe pliki skalują się liniowo, ale usługa w chmurze utrzymuje niski ślad pamięciowy.Jak mogę rejestrować szczegóły konwersji w celu audytu?
SDK zwracarequestIdoraz znaczniki czasu w obiekcie odpowiedzi. Możesz także włączyć logowanie po stronie serwera w ustawieniach konta, aby przechwytywać pełne ładunki żądania i odpowiedzi.Gdzie mogę znaleźć referencję API dla ustawień konwersji?
Wszystkie modele, w tymConvertSettings, są udokumentowane w oficjalnej referencji API. Referencja zawiera przykłady dla każdej konfigurowalnej opcji.Czy istnieje sposób przetestowania SDK bez zakupu licencji?
Tak, możesz poprosić o tymczasową licencję na stronie tymczasowej licencji. Pozwala to ocenić funkcje konwersji przed podjęciem decyzji o płatnym planie.
