تبدیل صفحات گسترده 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 با شناسه مشتری و رمز عبور خود ایجاد کنید، سپس ConversionApi را نمونه‌سازی کنید. برای جزئیات کلاس‌ها به API reference مراجعه کنید.
  3. بارگذاری فایل منبع ODS - از نقطه انتهایی UploadFile برای ذخیره فایل در فضای ذخیره‌سازی ابری GroupDocs استفاده کنید.
  4. ایجاد تنظیمات تبدیل - مقدار outputFormat را به XLSX تنظیم کنید و هر پارامتر اختیاری مانند preserveFormatting را تنظیم نمایید.
  5. اجرای تبدیل - با استفاده از convertDocument، شناسه فایل بارگذاری شده و شیء تنظیمات را پاس دهید.
  6. بارگیری نتیجه XLSX - فایل تبدیل‌شده را با استفاده از نقطه انتهایی 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. Initialize the Conversion API
// ---------------------------------------------------------------------
$conversionApi = new ConversionApi($config);
// ---------------------------------------------------------------------
// 3. بارگذاری فایل ODS به GroupDocs cloud storage
// ---------------------------------------------------------------------
$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. انجام تبدیل // ——————————————————————— $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"
  1. شروع تبدیل

    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"}'
    
  2. دانلود نتیجه 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 - این سرویس داده‌ها را به‌صورت جریان می‌فرستد و مصرف حافظه را حتی برای صفحات گسترده بزرگ زیر ۵۰ مگابایت نگه می‌دارد.
  • 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 چقدر است؟
    برای فایل‌های تا ۵ مگابایت، تبدیل معمولاً در کمتر از ۲ ثانیه تکمیل می‌شود، همان‌طور که در جدول بنچمارک نشان داده شده است. فایل‌های بزرگتر به‌صورت خطی مقیاس می‌شوند، اما سرویس ابری حافظه کمی مصرف می‌کند.

  • چگونه می‌توانم جزئیات تبدیل را برای حسابرسی ثبت کنم؟
    SDK یک requestId و زمان‌مهرها را در شیء پاسخ برمی‌گرداند. همچنین می‌توانید ثبت‌نام سمت سرور را در تنظیمات حساب خود فعال کنید تا بارهای کامل درخواست و پاسخ را ضبط کنید.

  • کجا می‌توانم مرجع API برای تنظیمات تبدیل را پیدا کنم؟
    تمام مدل‌ها، از جمله ConvertSettings، در مرجع رسمی API reference مستند شده‌اند. این مرجع مثال‌هایی برای هر گزینه قابل پیکربندی ارائه می‌دهد.

  • آیا راهی برای تست SDK بدون خرید لایسنس وجود دارد؟
    بله، می‌توانید یک لایسنس موقت را از صفحه temporary license page درخواست کنید. این به شما امکان می‌دهد ویژگی‌های تبدیل را قبل از تعهد به یک برنامه پرداختی ارزیابی کنید.

Read More