ফ্রি PHP লাইব্রেরি মাধ্যমে Excel, CSV, ও ODS ফাইল ইম্পোর্ট এবং এক্সপোর্ট করুন

ওপেন সোর্স PHP API যা সফটওয়্যার ডেভেলপারদেরকে MS Excel ফাইল ইম্পোর্ট এবং এক্সপোর্ট করতে সক্ষম করে। এর ফিচার, সুবিধা এবং কোড উদাহরণগুলো শিখে বড় ডেটাসেট দক্ষতার সাথে হ্যান্ডেল করুন।

Fast-Excel কী?

Fast-Excel হল একটি হালকা PHP প্যাকেজ, যা Laravel অ্যাপ্লিকেশনে Excel এবং CSV ইম্পোর্ট/এক্সপোর্ট অপারেশন সহজ করার জন্য ডিজাইন করা হয়েছে। OpenSpout এর উপর ভিত্তি করে তৈরি, এটি গতি, কম মেমরি ব্যবহার এবং ডেভেলপার-বন্ধুত্বপূর্ণ সিনট্যাক্সের উপর গুরুত্ব দেয়। ভারী স্প্রেডশিট লাইব্রেরিগুলোর তুলনায়, Fast-Excel এমন প্রকল্পের জন্য আদর্শ যা অপ্রয়োজনীয় জটিলতা ছাড়া সহজ এবং কার্যকর স্প্রেডশিট হ্যান্ডলিং প্রয়োজন। এটি XLSX, CSV এবং ODS ফাইলের এক্সপোর্ট ও ইম্পোর্ট সমর্থন করে, একই সাথে মেমরি ব্যবহারকে আশ্চর্যজনকভাবে কম রাখে।

Fast-Excel বিশেষভাবে ডেভেলপারদের জন্য উপকারী যারা বড় Excel, CSV, বা ODS ফাইল প্রক্রিয়া করতে হয় মেমরি সীমাবদ্ধতার সমস্যায় না পড়ে। প্রচলিত লাইব্রেরিগুলো প্রায়ই পুরো ডেটাসেট মেমরিতে লোড করে, কিন্তু Fast-Excel স্ট্রিমিং প্রযুক্তি ব্যবহার করে ডেটা দক্ষভাবে হ্যান্ডেল করে। এই লাইব্রেরি ডাটাবেস রেকর্ডকে স্প্রেডশিটে এক্সপোর্ট করা, ব্যবহারকারীর ডেটা বা রিপোর্ট ইম্পোর্ট করা, বড় রিপোর্ট ডাইনামিকভাবে জেনারেট করা, Laravel অ্যাপে Excel হ্যান্ডলিং সহজ করা ইত্যাদির জন্য ব্যাপকভাবে ব্যবহৃত হয়। এর পরিষ্কার API এবং ন্যূনতম কনফিগারেশন দিয়ে, Fast-Excel ডেভেলপমেন্ট সময় কমায় এবং পারফরম্যান্স উন্নত করে।

Previous Next

Fast-Excel দিয়ে শুরু করা

আপনার প্রকল্পে Fast-Excel ইনস্টল করার সুপারিশকৃত পদ্ধতি হল কম্পোজার ব্যবহার করা। মসৃণ ইনস্টলেশনের জন্য দয়া করে নিম্নলিখিত কমান্ডটি ব্যবহার করুন।

Composer এর মাধ্যমে Fast-Excel ইনস্টল করুন

 composer require rap2hpoutre/fast-excel

আপনি এছাড়াও Git ব্যবহার করে প্রকল্পটি ক্লোন করতে পারেন নিম্নলিখিত কমান্ড চালিয়ে

PHP ব্যবহার করে কালেকশনগুলোকে Excel ফাইলে এক্সপোর্ট করুন

Fast-Excel সংগ্রহ বা মডেলগুলোকে Excel-এ রপ্তানি করা অত্যন্ত সহজ করে তোলে। মাত্র কয়েকটি কোড লাইনের মাধ্যমে আপনি .xlsx, .csv, অথবা .ods ফাইল তৈরি করতে পারেন। এই ফিচারটি বয়লারপ্লেট কোড দূর করে এবং ডেভেলপমেন্টের গতি বাড়ায়, বিশেষ করে ড্যাশবোর্ড বা রিপোর্টিং সিস্টেমের জন্য। নিম্নলিখিত উদাহরণটি দেখায় কীভাবে PHP কোড ব্যবহার করে ডেটা MS Excel XLSX ফাইলে রপ্তানি করা যায়। লাইব্রেরিটি সরাসরি একটি Laravel সংগ্রহকে Excel ফাইলে রূপান্তর করে, জটিল কনফিগারেশন প্রয়োজন না করে।

কিভাবে PHP লাইব্রেরি ব্যবহার করে ডেটা Excel XLSX ফাইলে রপ্তানি করবেন?

use Rap2hpoutre\FastExcel\FastExcel;
// Sample data
$list = collect([
    ['id' => 1, 'name' => 'Jane'],
    ['id' => 2, 'name' => 'John'],
]);
// Export to Excel
(new FastExcel($list))->export('users.xlsx');

জেনারেটর ব্যবহার করে মেমরি-সাশ্রয়ী চাঙ্কড এক্সপোর্ট

ওপেন সোর্স Fast-Excel লাইব্রেরিতে কম মেমরি ব্যবহার এবং ডেটা ইম্পোর্ট বা এক্সপোর্টের জন্য সহজ সিনট্যাক্সের সমর্থন অন্তর্ভুক্ত রয়েছে। এটি "বিগ ডেটা" হ্যান্ডল করার প্রধান ফিচার। ১ মিলিয়ন ব্যবহারকারীকে একটি অ্যারেতে লোড করার পরিবর্তে আপনি Laravel-এর cursor() অথবা একটি কাস্টম yield জেনারেটর ব্যবহার করেন। এক্সপোর্টারটি প্রতিটি রো একে একে প্রক্রিয়া করে, ফাইলে লিখে এবং মেমরি থেকে মুছে দেয়। এতে আপনার মেমরি ব্যবহার স্থির (খুব কম) থাকে, আপনি ১০০ রো রপ্তানি করুন বা ১০ মিলিয়ন রো রপ্তানি করুন, তাতে কোনো পার্থক্য নেই।

কিভাবে PHP অ্যাপ্লিকেশনে কাস্টম হেডার সহ নির্দিষ্ট ফিল্ডগুলো রপ্তানি করবেন?

return (new FastExcel(User::all()))->export('formatted_users.xlsx', function ($user) {
    return [
        'Full Name' => $user->firstname . ' ' . $user->lastname,
        'Email Address' => $user->email,
        'Member Since' => $user->created_at->format('Y-m-d'),
        'Status' => $user->is_active ? 'Active' : 'Suspended'
    ];
});

ডেটা সরাসরি ডাটাবেজে ইম্পোর্ট করুন

ম্যানুয়ালি রো ইম্পোর্ট করার পরিবর্তে, Fast-Excel প্রতিটি রো প্রক্রিয়া করে সরাসরি আপনার ডেটাবেসে সন্নিবেশ করতে পারে। এটি অ্যাডমিনের বাল্ক আপলোডের জন্য আদর্শ এবং বাল্ক ডেটাবেস ইনসারশন, পরিষ্কার কোড, কম ম্যানুয়াল প্রক্রিয়াকরণ, সহজ অ্যাডমিন ওয়ার্কফ্লো ইত্যাদি মতো চমৎকার সুবিধা প্রদান করে। এটি বিশেষত HR সিস্টেম, CRM এবং ই-কমার্স প্ল্যাটফর্মের জন্য উপযোগী। এখানে একটি উপযোগী উদাহরণ রয়েছে যা দেখায় কীভাবে PHP অ্যাপ্লিকেশনের মধ্যে ডেটাবেসে ডেটা ইম্পোর্ট করা যায়।

কিভাবে PHP লাইব্রেরি ব্যবহার করে ডেটা সরাসরি ডাটাবেজে ইম্পোর্ট করবেন?

use Rap2hpoutre\FastExcel\FastExcel;
use App\Models\User;

(new FastExcel)->import('users.xlsx', function ($line) {
    return User::create([
        'name' => $line['Name'],
        'email' => $line['Email'],
    ]);
});

PHP ব্যবহার করে কাস্টম কলাম ম্যাপিং ও ফরম্যাটিং

ডেটাবেস কলামগুলি সবসময় মানব-পাঠযোগ্য নয়। Fast-Excel লাইব্রেরি কাস্টম কলাম বা রো ম্যাপিং এবং ফরম্যাটিংয়ের সম্পূর্ণ সমর্থন অন্তর্ভুক্ত করেছে। এই ফিচারটি আপনাকে ঠিক কোন অ্যাট্রিবিউট এক্সপোর্ট করতে হবে এবং তাদের মান রিয়েল-টাইমে পুনরায় ফরম্যাট করতে দেয়। আপনি যদি শেষ নাম বড় অক্ষরে করতে চান, প্রথম ও শেষ নাম একত্রিত করতে চান, অথবা ‘user_id’ কে ‘Employee Identifier’ হিসেবে পুনঃনামকরণ করতে চান, তবে ক্লোজারটি আপনাকে চূড়ান্ত আউটপুট অ্যারেতে পূর্ণ নিয়ন্ত্রণ দেয়।

 বাংলা