1. produkty
  2.   Tabulka
  3.   PHP
  4.   Fast-Excel
 
  

Import a export Excel, CSV a ODS souborů pomocí zdarma PHP knihovny

Open Source PHP API, které umožňuje vývojářům softwaru importovat a exportovat soubory MS Excel. Seznamte se s jeho funkcemi, výhodami a ukázkami kódu pro efektivní práci s velkými datovými sadami.

Co je Fast-Excel?

Fast-Excel je lehký PHP balíček navržený pro zjednodušení operací importu/exportu Excel a CSV v Laravel aplikacích. Postavený na OpenSpout, zaměřuje se na rychlost, nízkou spotřebu paměti a syntax, která je přátelská pro vývojáře. Na rozdíl od těžších knihoven pro tabulky je Fast-Excel ideální pro projekty, které potřebují jednoduchou a efektivní práci s tabulkami bez zbytečné složitosti. Podporuje export a import souborů XLSX, CSV a ODS při překvapivě nízké spotřebě paměti.

Fast-Excel je zvláště užitečný pro vývojáře, kteří potřebují zpracovávat velké soubory Excel, CSV nebo ODS, aniž by narazili na omezení paměti. Tradiční knihovny často načítají celé datové sady do paměti, ale Fast-Excel používá streamovací techniky pro efektivní zpracování dat. Knihovna se široce používá pro export databázových záznamů do tabulek, import uživatelských dat nebo reportů, dynamické generování velkých reportů, zjednodušení práce s Excelem v aplikacích Laravel a podobně. Díky čistému API a minimální konfiguraci Fast-Excel snižuje dobu vývoje a zároveň zlepšuje výkon.

Previous Next

Začínáme s Fast-Excel

Doporučený způsob instalace Fast-Excel do vašeho projektu je pomocí Composeru. Pro hladkou instalaci použijte následující příkaz.

Instalace Fast-Excel pomocí Composeru

 composer require rap2hpoutre/fast-excel

Projekt můžete také naklonovat pomocí Git spuštěním

Export kolekcí do souborů Excel pomocí PHP

Fast-Excel umožňuje export kolekcí nebo modelů do Excelu neuvěřitelně jednoduše. Pouhých několika řádků kódu vám umožní generovat soubory .xlsx, .csv nebo .ods. Tato funkce eliminuje boilerplate kód a urychluje vývoj, zejména pro dashboardy nebo systémy reportování. Následující příklad ukazuje, jak exportovat data do souboru MS Excel XLSX pomocí PHP kódu. Knihovna převádí Laravel kolekci přímo do Excel souboru bez nutnosti složitých konfigurací.

Jak exportovat data do souboru Excel XLSX pomocí PHP knihovny?

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');

Paměťově úsporné segmentované exporty pomocí generátorů

Otevřená knihovna Fast-Excel zahrnuje podporu pro nízkou spotřebu paměti a jednoduchou syntaxi pro import a export dat. Jedná se o hlavní funkci pro práci s „big data“. Místo načítání 1 milionu uživatelů do pole používáte Laravel‑ovu metodu cursor() nebo vlastní generátor yield. Exportér zpracovává každý řádek po jednom, zapíše jej do souboru a uvolní z paměti. To udržuje spotřebu paměti konstantní (velmi nízkou), ať už exportujete 100 řádků nebo 10 milionů řádků.

Jak exportovat konkrétní pole s vlastními záhlavími v PHP aplikacích?

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'
    ];
});

Importovat data přímo do databáze

Místo ručního importu řádků může Fast-Excel zpracovat každý řádek a přímo jej vložit do vaší databáze. To je ideální pro hromadné nahrávání administrátorem a má velké výhody, jako je hromadné vkládání do databáze, čistší kód, méně ručního zpracování, snadné administrátorské pracovní postupy a podobně. Je to zvláště užitečné pro HR systémy, CRM a e‑commerce platformy. Zde je užitečný příklad, který ukazuje, jak importovat data do databáze v PHP aplikacích.

Jak importovat data přímo do databáze pomocí PHP knihovny?

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

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

Vlastní mapování sloupců a formátování pomocí PHP

Sloupce v databázi nejsou vždy čitelné pro člověka. Knihovna Fast-Excel zahrnuje kompletní podporu pro vlastní mapování a formátování sloupců nebo řádků. Tato funkce vám umožňuje přesně definovat, které atributy exportovat, a během běhu přeformátovat jejich hodnoty. Ať už potřebujete převést příjmení na velká písmena, spojit jméno a příjmení, nebo přejmenovat ‘user_id’ na ‘Identifikátor zaměstnance’, uzávěrka vám dává plnou kontrolu nad konečným výstupním polem.

 Čeština