استخراج تصاویر از اکسل با PHP

  • آپدیت شده در تاریخ

استخراج تصاویر از اکسل با PHP

در این آموزش قصد داریم به شما نحوه استخراج تصاویر از اکسل با PHP از آدرس URL را نشان بدیم.

راه های مختلفی برای استخراج تصاویر از URL وجود دارد. PHP شامل توابع از پیش-­ساخته برای استخراج داده ها مانند تصاویر از یک URL می باشد.

این مقاله شما نحوه استخراج تصاویر از اکسل با PHP که آدرس URL آن ها وجود دارد را توسط کتابخانه PhpSpreadsheet یاد می گیرید.

کتابخانه PhpSpreadsheet از عملیات خواندن-نوشتن (read-write) در اکسل پشتیبانی می کند.

همچنین قابلیت های زیادی مثل فرمت بندی محتوا, دستکاری داده و غیره را ارایه می دهد.

کار کردن با spreadsheets یکی از نیازهای معمول برای مدیریت داده های excel با برنامه نویسی است.

این کتابخانه همان نسخه بازنویسی و جدید PHPExcel قدیمی و معروف است.

همچنین ما قبلا نحوه استخراج URL توسط PHP را یاد گرفتیم.

 

موارد استفاده استخراج تصاویر از اکسل با PHP

استخراج تصاویر از اکسل با PHP در بسیاری از سناریوهای اپلیکیشن وب قابل استفاده است :

  1. واردکردن (import) حجم زیادی از تصاویر به داخل پرونده های چندرسانه ای
  2. انتقال فایل های چندرسانه ای از یک دامنه به دیگری
  3. بازگردانی (restore) بکاپ اکسل تصاویر به یک دیتابیس
  4. ساخت یک گالری تصاویر داینامیک بدون دیتابیس

مزیت های کتابخانه PhpSpreadsheet

کتابخانه PhpSpreadsheet قابلت های زیادی از جمله زیر دارد :

  • متدهایی برای آماده کردن گزارش ها, چارت ها, برنامه ریزی ها و غیره ارایه می دهد.
  • آپشن خواندن, نوشتن از یک سطر, ستون یا شیت خاص را از سند می دهد.
  • برای مدیریت حجم زیاد داده مناسب است.
  • در مدیریت چک لیست ها, تقویم, timesheets , زمان بندی و برنامه زیری ها کمک می کند.
  • امنیت را برای محافظت داده از ویرایش شدن ارایه می دهد.
  • رمزگذاری را برای جلوگیری از نمایش داده را پشتیبانی می کند.

 

کتابخانه های PHP موجود برای ایمپورت-اکسپورت

کتابخانه های PHP زیادی برای مدیریت داده های اکسل وجود دارند :

  • PortPHP ایمپورت-اکسپورت را بین اکسل, CSV و دیتابیس را پشتیبانی می کند.
  • Spout برای خواندن و نوشتن داده در اکسل استفاده می شود و سه نوع فایل XLS, CSV, ODS را پشتیبانی می کند.

 

ساختار فایل اسکریپت استخراج تصاویر از اکسل با PHP

اسکرین شات زیر ساختار فایل این مثال را نشان می دهد.

استخراج تصاویر از اکسل با PHP

فایل کلاس ExcelImportService کتابخانه PhpSpreadsheet را بارگذاری و همه عملیات مربوط به استخراج تصاویر از excel را انجام می دهد.

فولدر excel_template شامل فایل اکسل url تصاویر است که قرار است از این فایل تصاویر را استخراج کنیم.

به جای این فایل ثابت می توانید یک فرم HTML به همراه ورودی فایل بسازی تا بتوانید فایل را مستقیما از کاربر دریافت کنید.

 

کد PHP بارگذاری و استخراج داده تصاویر

این کد php کلاس ExcelImportService را برای بارگذاری و ایمپورت داده تصاویر از اکسل اجرا می کند.

این کلاس اصلی PHP مثال ما است که تمام عملیات حین استخراج تصاویر را انجام می دهد.

 

ExcelImportService.php

این کلاس کتابخانه PhpSpreadsheet را لود می کند. همچنین یک نمونه از DataSource را ایجاد می کند.

نکته: کتابخانه PhpSpreadsheet را از گیت هاب را دانلود و سپس با دستور کامپوزر زیر پیش نیازهای آن را دریافت کنید :

در این کلاس، تابع loadExcel() اکسل را برای خواندن URL ها بصورت یک آرایه لود می کند و این آرایه را برای استخراج تصاویر توسط درخواست cURL برگشت می دهد.

تابع extractImage() اسکریپت cURL را اجرا و داده تصاویر را از آدرس URL دریافت می کند.

سپس آن را داخل فایل که در این مثال مشخص شده است قرار می دهد (write می کند.)

بعد از قرار دادن تصویر استخراج شده داخل یک فولدر, کد ما تصویر را در جدول دیتابیس ذخیره می کند.

متد saveImagePath() شامل کوئری و پارامترها برای insert کردن داخل دیتابیس است.

DataSource.php

این کلاس PHP که در بیشتر مثال ها استفاده می کنیم شامل توابع مربوط به انجام عملیات دیتابیس ما است.

 

نمایش تصاویر استخراج شده در یک گالری

کد HTML زیر به شما تصاویر ذخیره شده توسط اسکریپت استخراج تصاویر از اکسل با PHP را نشان می دهد.

من کد PHP را داخل کدهای html به منظور دریافت آدرس محل تصاویر از دیتابیس بصورت داینامیک، قرار دادم.

متد getAllImages() تصاویر را از دیتابیس واکشی و بصورت یک آرایه برگشت می دهد.

داده های آرایه در حلقه foreach تکرار می شوند تا کل تصاویر نمایش دهده شوند.

بعد از استخراج موفق تصاویر, یک پیام بر اساس نتیجه عملیات به کاربر نمایش داده می شود.

اگر یک فایل اکسلی که قبلا تصاویر آن را استخراج کردیم استفاده کنید پس پیام “No new images found” چاپ می شود.

استایل های زیر برای نمایش بهتر تصاویر در گالری استفاده شده است :

 

اسکریپت دیتابیس

کد SQL زیر برای ساخت جدول tbl_image استفاده شده است.

این جدول آدرس محل ذخیره تصاویر را در خود نگهداری می کند.

می توانید این کد را قبل از ران کردن مثال اجرا کنید. همچنین فایل sql آن به همراه اسکریپت کامل از باکس دانلود آخر این پست قابل دریافت است.

 

استخراج تصاویر از اکسل با PHP توسط PhpSpreadsheet

اسکرین شات زیر خروجی گالری تصاویر را به شما نشان می دهد. این تصاویر در فولدر uploads مثال ما قرار دادند.

همچنین پیام بالای این گالری نشان می دهد که داده های فایل اکسل با موفقیت استخراج شدند.

استخراج تصاویر از اکسل با PHP

اگر یک فایل اکسلی که قبلا تصاویر آن را استخراج کردیم استفاده کنید پس پیام زیر نمایش داده می شود.

استخراج تصاویر از اکسل با PHP

امیدوارم از آموزش استخراج تصاویر از اکسل با PHP نهایت استفاده را برده باشید.

برای دانلود سورس کد و دیتابیس از باکس دانلود استفاده کنید.

هر سوالی داشتید ، از قسمت نظرات ارسال کنید . سریعا ، پاسخگوی سوالات شما هستیم .

موفق و پیروز باشید.

حسن شفیعی توسعه دهنده وب و موبایل مدیر سایت علاقه خاصی به برنامه نویسی وب و موبایل دارم و هر روز تلاش می کنم به این حوزه مسلط تر شوم و اطلاعاتم را به شکل کاربردی برای علاقه مندان در وب به اشتراک بگذارم. اگر نیاز به برنامه نویس برای انجام پروژه و نوشتن اسکریپت های سمت وب, اپلیکیشن های اندروید و ios, پیدا کردن راه حل توسعه و غیره داشتید حتما از طریق تماس با ما/ واتساپ/ تلگرام بهم پیام بدید. برایتهیه هاست مطمین و پرسرعت کلیک کنید
مطالب زیر را حتما بخوانید
دیدگاه کاربران

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دوره های آموزشی