PHPSpreadsheet
Elektronik Tablo Dosyaları için Açık Kaynak PHP Kitaplığı
Microsoft Excel ve LibreOffice Calc dosyalarını okuyun, yazın, yönetin ve işleyin.
PHPSpreadsheet, Microsoft Excel ve LibreOffice Calc'ın çeşitli elektronik tablo dosya biçimleriyle etkileşime girmenize ve bunları kullanmanıza olanak tanıyan bir dizi sınıf içeren açık kaynaklı bir kitaplıktır. PHPSpreadsheet, sayılar, formüller, resim vb. gibi çeşitli türlerdeki verileri tutacak hücreler içeren bir veya daha fazla çalışma sayfası içeren elektronik tabloları destekler.
PHPSpreadsheet'e Başlarken
PhpSpreadsheet kullanarak geliştirmek için öncelikle PHP sürüm 7.1 veya daha yenisine sahip olmanız gerekir. PhpSpreadsheet'i projenize kurmanın önerilen yolu composer kullanmaktır. Terminali projenizin kök dizininde açın ve şu komutu çalıştırın:
İşte komut
composer require phpoffice/phpspreadsheet
Composer, doğrudan komut satırından çalıştırabileceğiniz kullanışlı bir yükleyici sunar. Bu dosyayı indirmekten veya GitHub üzerinden incelemekten çekinmeyin. Yüklemenin iki yolu vardır. Besteci. Projenizin bir parçası olarak yerel olarak veya sistem genelinde yürütülebilir bir dosya olarak global olarak kurun.
Elektronik Tablo Hücreleriyle Çalışma
PHPSpreadsheet, hücreye erişmenize ve değerini koordinatlara göre ayarlamanıza olanak tanır. Ayrıca yeni bir hücre oluşturabilir ve içinde bir formül ayarlayabilirsiniz. Ayrıca hücreyi tarih, saat ve baştaki sıfırlarla birlikte sayı gibi çeşitli veri türlerini işgal edecek şekilde yapılandırabilirsiniz. PHPSpreadsheet ayrıca bir diziden bir dizi hücre ayarlamanıza ve yineleyiciler veya dizinler kullanarak hücreler arasında döngü oluşturmanıza olanak tanır. Kullanıcı dostu veri girişine izin vermek için değer bağlayıcıları da kullanabilirsiniz.
Yeni bir XLSX oluşturun - 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');
Otomatik Filtreler Oluşturun ve Uygulayın
PHPSpreadsheet'i kullanarak, yalnızca otomatik filtrede tanımladığınız ölçütlerle eşleşen satırları filtrelemek ve görüntülemek için otomatik filtreleme aralıkları uygulayabilirsiniz. Katkı maddesi olarak birden fazla sütuna filtre uygulayabilirsiniz.
PHPSpreadsheet, bir çalışma sayfasında otomatik filtreleme alanı ayarlamanıza olanak tanır. Otomatik filtre ifadeleri oluşturabilir, okuyabilir ve yazabilirsiniz. Ayrıca, basit filtreler, eşleşen boşluklar, DateGroup filtreleri, özel filtreler, dinamik filtreler ve ilk on filtre gibi çeşitli filtre türleri mevcuttur.
XLSX'te Otomatik Filtre Uygula - 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');
Formül Hesaplama Motoru
İş e-tablolarınızda temelden ileri seviyeye kadar hesaplamalar yapmak için PHPSpreadsheet'in formül hesaplama motorunu kolayca çağırabilirsiniz, gerisini o halleder.
PHPSpreadsheet'in formül ayrıştırıcısı, satırlar/sütunlar eklenirken/kaldırılırken formülü otomatik olarak ayarlayabilir. Microsoft Excel formülü, yürütülmeden önce PHP koduna dönüştürülür. Performansı artırmak için formülün sonucunu tutmak için bir hesaplama önbelleği kullanılır. Benzer şekilde, her bir çalışma sayfası ayrı bir önbellek tarafından korunur.