ilginiz için teşekkür ederim uğraştım baya ama çözemedim kullandığım sınıfımı değiştirmem gerekiyor çünkü veri tabanına kayıt ederken formüller text olarak geçiyor
rica ederim.
büyük harflerle DEPRECATED ifadesi bulunuyor, kullanmayın bu sınıfı.
size verdiğim linkteki sınıfı kullanın. (konuda belirttiğin linkte mevcut)
formula aramasında ilk sonuca tıklayın.
formül ekleme desteği var.
$spreadsheet->getActiveSheet()->setCellValue('B8','=IF(C4>500,"profit","loss")' );
https://phpspreadsheet.readthedocs.i...lation-engine/
$spreadsheet->getActiveSheet()->getCell('E11')->getCalculatedValue();
hesaplanan değeri getiren method mevcut.
adım adım inceleyerek test ederek ilerleyin yaparsınız.
https://phpspreadsheet.readthedocs.i...readsheet-file
dosya yükleme
$inputFileType = 'Xls';
$inputFileName = './sampleData/example1.xls';
$sheetname = 'Data Sheet #2';
/** Create a new Reader of the type defined in $inputFileType **/
$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader( $inputFileType);
/** Advise the Reader of which WorkSheets we want to load **/
$reader->setLoadSheetsOnly($sheetname);
/** Load $inputFileName to a Spreadsheet Object **/
$spreadsheet = $reader->load($inputFileName);
https://phpspreadsheet.readthedocs.i...sing-iterators
$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader( 'Xlsx');
$reader->setReadDataOnly(TRUE);
$spreadsheet = $reader->load("test.xlsx");
$worksheet = $spreadsheet->getActiveSheet();
echo '<table>' . PHP_EOL;
foreach ($worksheet->getRowIterator() as $row) {
echo '<tr>' . PHP_EOL;
$cellIterator = $row->getCellIterator();
$cellIterator->setIterateOnlyExistingCells(FALSE); // This loops through all cells,
// even if a cell value is not set.
// By default, only cells that have a value
// set will be iterated.
foreach ($cellIterator as $cell) {
echo '<td>' .
$cell->getValue() .
'</td>' . PHP_EOL;
}
echo '</tr>' . PHP_EOL;
}
echo '</table>' . PHP_EOL;
sitenin dökümantasyonu çok iyi durumda, ne ararsanız örnekleri ile sunuyor size