![](https://products-qa.fileformat.com/nl/spreadsheet/php/phpspreadsheet/header-image.png)
PHPSpreadsheet
Open source PHP-bibliotheek voor spreadsheetbestanden
Lees, schrijf, manipuleer en verwerk Microsoft Excel & LibreOffice Calc-bestanden.
PHPSpreadsheet is een open-sourcebibliotheek die een reeks klassen bevat waarmee u kunt communiceren met en gebruik kunt maken van verschillende spreadsheetbestandsindelingen van Microsoft Excel en LibreOffice Calc. PHPSpreadsheet ondersteunt spreadsheets die een of meer werkbladen bevatten, met cellen die gegevens van verschillende typen bevatten, zoals getallen, formules, afbeeldingen, enz.
Aan de slag met PHPSpreadsheet
Allereerst moet je PHP versie 7.1 of nieuwer hebben om te kunnen ontwikkelen met PhpSpreadsheet. De aanbevolen manier om PhpSpreadsheet in uw project te installeren, is door composer te gebruiken. Open de terminal in de hoofdmap van uw project en voer de opdracht uit:
Hier is het commando
composer require phpoffice/phpspreadsheet
Composer biedt een handig installatieprogramma dat u direct vanaf de opdrachtregel kunt uitvoeren. Voel je vrij om dit bestand te downloaden of te bekijken op GitHub. Er zijn twee manieren om te installeren Componist. Installeer het lokaal als onderdeel van uw project, of wereldwijd als een systeembreed uitvoerbaar bestand.
Werken met spreadsheetcellen
Met PHPSpreadsheet kunt u toegang krijgen tot cellen en de waarde ervan instellen op coördinaten. U kunt ook een nieuwe cel maken en daarin een formule instellen. U kunt de cel ook configureren om verschillende soorten gegevens te gebruiken, zoals datum, tijd en nummer met voorloopnullen. Met PHPSpreadsheet kunt u ook een reeks cellen uit een array instellen en door cellen bladeren met behulp van iterators of indexen. U kunt ook waardebinders gebruiken om gebruikersvriendelijke gegevensinvoer mogelijk te maken.
Maak een nieuwe XLSX - PHP
<?php
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
// Create a new Spreasheet
$spreadsheet = new Spreadsheet();
// Get active sheet
$sheet = $spreadsheet->getActiveSheet();
// Set cell value
$sheet->setCellValue('A1', 'File Format Developer Guide !');
// Save in Xlsx format
$writer = new Xlsx($spreadsheet);
$writer->save('FileFormat.xlsx');
AutoFilters maken en toepassen
Met PHPSpreadsheet kunt u autofilterbereiken toepassen om alleen die rijen uit te filteren en weer te geven die overeenkomen met de criteria die u in de autofilter hebt gedefinieerd. U kunt filters toepassen op meer dan één kolom als toevoegingen.
Met PHPSpreadsheet kunt u een automatisch filtergebied op een werkblad instellen. U kunt autofilter-expressies maken, lezen en schrijven. Verder zijn er verschillende soorten filters beschikbaar, zoals eenvoudige filters, bijpassende blanco's, DateGroup-filters, aangepaste filters, dynamische filters en top tien filters.
Autofilter toepassen in XLSX - PHP
<?php
require 'vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
// Load existing file without filters
$spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load('withoutFilter.xlsx');
// Select active worksheet
$spreadsheet->setActiveSheetIndex(0);
$spreadsheet->getActiveSheet()->setAutoFilter($spreadsheet->getActiveSheet()->calculateWorksheetDimension());
// Set active filters
$autoFilter = $spreadsheet->getActiveSheet()->getAutoFilter();
// Filter the Country column on a filter value of Germany
$autoFilter->getColumn('C')
->setFilterType(Column::AUTOFILTER_FILTERTYPE_FILTER)
->createRule()
->setRule(
Rule::AUTOFILTER_COLUMN_RULE_EQUAL,
'Germany'
);
// Save file
$writer = new Xlsx($spreadsheet);
$writer->save('Filter.xlsx');
Formuleberekeningsengine
Om eenvoudige tot geavanceerde berekeningen in uw zakelijke spreadsheets uit te voeren, kunt u eenvoudig de formuleberekeningsengine van PHPSpreadsheet oproepen, en deze doet de rest.
De formule-parser van PHPSpreadsheet kan automatisch een formule aanpassen terwijl rijen/kolommen worden ingevoegd/verwijderd. Microsoft Excel-formule wordt omgezet in PHP-code voordat deze wordt uitgevoerd. Om de prestaties te verbeteren, wordt een berekeningscache gebruikt om het resultaat van de formule te bewaren. Evenzo wordt elk afzonderlijk werkblad onderhouden door een afzonderlijke cache.