@@ -197,14 +197,14 @@ discard block |
||
197 | 197 | $this->documentSummaryInformation = $this->writeDocumentSummaryInformation(); |
198 | 198 | // initialize OLE Document Summary Information |
199 | 199 | if (isset($this->documentSummaryInformation) && !empty($this->documentSummaryInformation)) { |
200 | - $OLE_DocumentSummaryInformation = new File(OLE::ascToUcs(chr(5) . 'DocumentSummaryInformation')); |
|
200 | + $OLE_DocumentSummaryInformation = new File(OLE::ascToUcs(chr(5).'DocumentSummaryInformation')); |
|
201 | 201 | $OLE_DocumentSummaryInformation->append($this->documentSummaryInformation); |
202 | 202 | } |
203 | 203 | |
204 | 204 | $this->summaryInformation = $this->writeSummaryInformation(); |
205 | 205 | // initialize OLE Summary Information |
206 | 206 | if (isset($this->summaryInformation) && !empty($this->summaryInformation)) { |
207 | - $OLE_SummaryInformation = new File(OLE::ascToUcs(chr(5) . 'SummaryInformation')); |
|
207 | + $OLE_SummaryInformation = new File(OLE::ascToUcs(chr(5).'SummaryInformation')); |
|
208 | 208 | $OLE_SummaryInformation->append($this->summaryInformation); |
209 | 209 | } |
210 | 210 | |
@@ -334,7 +334,7 @@ discard block |
||
334 | 334 | // create an Drawing Object for the dropdown |
335 | 335 | $oDrawing = new BaseDrawing(); |
336 | 336 | // get the coordinates of drawing |
337 | - $cDrawing = Coordinate::stringFromColumnIndex($iInc) . $rangeBounds[0][1]; |
|
337 | + $cDrawing = Coordinate::stringFromColumnIndex($iInc).$rangeBounds[0][1]; |
|
338 | 338 | $oDrawing->setCoordinates($cDrawing); |
339 | 339 | $oDrawing->setWorksheet($sheet); |
340 | 340 | |
@@ -640,7 +640,7 @@ discard block |
||
640 | 640 | $dataProp .= pack('v', 0x000A); |
641 | 641 | $dataProp .= pack('v', 0x0000); |
642 | 642 | // value |
643 | - $dataProp .= 'Worksheet' . chr(0); |
|
643 | + $dataProp .= 'Worksheet'.chr(0); |
|
644 | 644 | |
645 | 645 | $dataSection[] = [ |
646 | 646 | 'summary' => ['pack' => 'V', 'data' => 0x0D], |
@@ -355,46 +355,46 @@ discard block |
||
355 | 355 | { |
356 | 356 | // Construct HTML |
357 | 357 | $properties = $this->spreadsheet->getProperties(); |
358 | - $html = '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">' . PHP_EOL; |
|
359 | - $html .= '<html>' . PHP_EOL; |
|
360 | - $html .= ' <head>' . PHP_EOL; |
|
361 | - $html .= ' <meta http-equiv="Content-Type" content="text/html; charset=utf-8">' . PHP_EOL; |
|
362 | - $html .= ' <meta name="generator" content="PhpSpreadsheet, https://github.com/PHPOffice/PhpSpreadsheet">' . PHP_EOL; |
|
358 | + $html = '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">'.PHP_EOL; |
|
359 | + $html .= '<html>'.PHP_EOL; |
|
360 | + $html .= ' <head>'.PHP_EOL; |
|
361 | + $html .= ' <meta http-equiv="Content-Type" content="text/html; charset=utf-8">'.PHP_EOL; |
|
362 | + $html .= ' <meta name="generator" content="PhpSpreadsheet, https://github.com/PHPOffice/PhpSpreadsheet">'.PHP_EOL; |
|
363 | 363 | if ($properties->getTitle() > '') { |
364 | - $html .= ' <title>' . htmlspecialchars($properties->getTitle()) . '</title>' . PHP_EOL; |
|
364 | + $html .= ' <title>'.htmlspecialchars($properties->getTitle()).'</title>'.PHP_EOL; |
|
365 | 365 | } |
366 | 366 | if ($properties->getCreator() > '') { |
367 | - $html .= ' <meta name="author" content="' . htmlspecialchars($properties->getCreator()) . '" />' . PHP_EOL; |
|
367 | + $html .= ' <meta name="author" content="'.htmlspecialchars($properties->getCreator()).'" />'.PHP_EOL; |
|
368 | 368 | } |
369 | 369 | if ($properties->getTitle() > '') { |
370 | - $html .= ' <meta name="title" content="' . htmlspecialchars($properties->getTitle()) . '" />' . PHP_EOL; |
|
370 | + $html .= ' <meta name="title" content="'.htmlspecialchars($properties->getTitle()).'" />'.PHP_EOL; |
|
371 | 371 | } |
372 | 372 | if ($properties->getDescription() > '') { |
373 | - $html .= ' <meta name="description" content="' . htmlspecialchars($properties->getDescription()) . '" />' . PHP_EOL; |
|
373 | + $html .= ' <meta name="description" content="'.htmlspecialchars($properties->getDescription()).'" />'.PHP_EOL; |
|
374 | 374 | } |
375 | 375 | if ($properties->getSubject() > '') { |
376 | - $html .= ' <meta name="subject" content="' . htmlspecialchars($properties->getSubject()) . '" />' . PHP_EOL; |
|
376 | + $html .= ' <meta name="subject" content="'.htmlspecialchars($properties->getSubject()).'" />'.PHP_EOL; |
|
377 | 377 | } |
378 | 378 | if ($properties->getKeywords() > '') { |
379 | - $html .= ' <meta name="keywords" content="' . htmlspecialchars($properties->getKeywords()) . '" />' . PHP_EOL; |
|
379 | + $html .= ' <meta name="keywords" content="'.htmlspecialchars($properties->getKeywords()).'" />'.PHP_EOL; |
|
380 | 380 | } |
381 | 381 | if ($properties->getCategory() > '') { |
382 | - $html .= ' <meta name="category" content="' . htmlspecialchars($properties->getCategory()) . '" />' . PHP_EOL; |
|
382 | + $html .= ' <meta name="category" content="'.htmlspecialchars($properties->getCategory()).'" />'.PHP_EOL; |
|
383 | 383 | } |
384 | 384 | if ($properties->getCompany() > '') { |
385 | - $html .= ' <meta name="company" content="' . htmlspecialchars($properties->getCompany()) . '" />' . PHP_EOL; |
|
385 | + $html .= ' <meta name="company" content="'.htmlspecialchars($properties->getCompany()).'" />'.PHP_EOL; |
|
386 | 386 | } |
387 | 387 | if ($properties->getManager() > '') { |
388 | - $html .= ' <meta name="manager" content="' . htmlspecialchars($properties->getManager()) . '" />' . PHP_EOL; |
|
388 | + $html .= ' <meta name="manager" content="'.htmlspecialchars($properties->getManager()).'" />'.PHP_EOL; |
|
389 | 389 | } |
390 | 390 | |
391 | 391 | if ($pIncludeStyles) { |
392 | 392 | $html .= $this->generateStyles(true); |
393 | 393 | } |
394 | 394 | |
395 | - $html .= ' </head>' . PHP_EOL; |
|
396 | - $html .= '' . PHP_EOL; |
|
397 | - $html .= ' <body>' . PHP_EOL; |
|
395 | + $html .= ' </head>'.PHP_EOL; |
|
396 | + $html .= ''.PHP_EOL; |
|
397 | + $html .= ' <body>'.PHP_EOL; |
|
398 | 398 | |
399 | 399 | return $html; |
400 | 400 | } |
@@ -460,13 +460,13 @@ discard block |
||
460 | 460 | while ($row++ < $rowMax) { |
461 | 461 | // <thead> ? |
462 | 462 | if ($row == $theadStart) { |
463 | - $html .= ' <thead>' . PHP_EOL; |
|
463 | + $html .= ' <thead>'.PHP_EOL; |
|
464 | 464 | $cellType = 'th'; |
465 | 465 | } |
466 | 466 | |
467 | 467 | // <tbody> ? |
468 | 468 | if ($row == $tbodyStart) { |
469 | - $html .= ' <tbody>' . PHP_EOL; |
|
469 | + $html .= ' <tbody>'.PHP_EOL; |
|
470 | 470 | $cellType = 'td'; |
471 | 471 | } |
472 | 472 | |
@@ -479,7 +479,7 @@ discard block |
||
479 | 479 | while ($column <= $dimension[1][0]) { |
480 | 480 | // Cell exists? |
481 | 481 | if ($sheet->cellExistsByColumnAndRow($column, $row)) { |
482 | - $rowData[$column] = Coordinate::stringFromColumnIndex($column) . $row; |
|
482 | + $rowData[$column] = Coordinate::stringFromColumnIndex($column).$row; |
|
483 | 483 | } else { |
484 | 484 | $rowData[$column] = ''; |
485 | 485 | } |
@@ -490,13 +490,13 @@ discard block |
||
490 | 490 | |
491 | 491 | // </thead> ? |
492 | 492 | if ($row == $theadEnd) { |
493 | - $html .= ' </thead>' . PHP_EOL; |
|
493 | + $html .= ' </thead>'.PHP_EOL; |
|
494 | 494 | } |
495 | 495 | } |
496 | 496 | $html .= $this->extendRowsForChartsAndImages($sheet, $row); |
497 | 497 | |
498 | 498 | // Close table body. |
499 | - $html .= ' </tbody>' . PHP_EOL; |
|
499 | + $html .= ' </tbody>'.PHP_EOL; |
|
500 | 500 | |
501 | 501 | // Write table footer |
502 | 502 | $html .= $this->generateTableFooter(); |
@@ -540,14 +540,14 @@ discard block |
||
540 | 540 | // Loop all sheets |
541 | 541 | $sheetId = 0; |
542 | 542 | |
543 | - $html .= '<ul class="navigation">' . PHP_EOL; |
|
543 | + $html .= '<ul class="navigation">'.PHP_EOL; |
|
544 | 544 | |
545 | 545 | foreach ($sheets as $sheet) { |
546 | - $html .= ' <li class="sheet' . $sheetId . '"><a href="#sheet' . $sheetId . '">' . $sheet->getTitle() . '</a></li>' . PHP_EOL; |
|
546 | + $html .= ' <li class="sheet'.$sheetId.'"><a href="#sheet'.$sheetId.'">'.$sheet->getTitle().'</a></li>'.PHP_EOL; |
|
547 | 547 | ++$sheetId; |
548 | 548 | } |
549 | 549 | |
550 | - $html .= '</ul>' . PHP_EOL; |
|
550 | + $html .= '</ul>'.PHP_EOL; |
|
551 | 551 | } |
552 | 552 | |
553 | 553 | return $html; |
@@ -598,9 +598,9 @@ discard block |
||
598 | 598 | $html .= '<tr>'; |
599 | 599 | for ($col = 'A'; $col != $colMax; ++$col) { |
600 | 600 | $html .= '<td>'; |
601 | - $html .= $this->writeImageInCell($pSheet, $col . $row); |
|
601 | + $html .= $this->writeImageInCell($pSheet, $col.$row); |
|
602 | 602 | if ($this->includeCharts) { |
603 | - $html .= $this->writeChartInCell($pSheet, $col . $row); |
|
603 | + $html .= $this->writeChartInCell($pSheet, $col.$row); |
|
604 | 604 | } |
605 | 605 | $html .= '</td>'; |
606 | 606 | } |
@@ -636,7 +636,7 @@ discard block |
||
636 | 636 | } |
637 | 637 | |
638 | 638 | // Prepend images root |
639 | - $filename = $this->getImagesRoot() . $filename; |
|
639 | + $filename = $this->getImagesRoot().$filename; |
|
640 | 640 | |
641 | 641 | // Strip off eventual '.' |
642 | 642 | if (substr($filename, 0, 1) == '.' && substr($filename, 0, 2) != './') { |
@@ -660,17 +660,17 @@ discard block |
||
660 | 660 | // base64 encode the binary data, then break it |
661 | 661 | // into chunks according to RFC 2045 semantics |
662 | 662 | $base64 = chunk_split(base64_encode($picture)); |
663 | - $imageData = 'data:' . $imageDetails['mime'] . ';base64,' . $base64; |
|
663 | + $imageData = 'data:'.$imageDetails['mime'].';base64,'.$base64; |
|
664 | 664 | } else { |
665 | 665 | $imageData = $filename; |
666 | 666 | } |
667 | 667 | } |
668 | 668 | |
669 | 669 | $html .= '<div style="position: relative;">'; |
670 | - $html .= '<img style="position: absolute; z-index: 1; left: ' . |
|
671 | - $drawing->getOffsetX() . 'px; top: ' . $drawing->getOffsetY() . 'px; width: ' . |
|
672 | - $drawing->getWidth() . 'px; height: ' . $drawing->getHeight() . 'px;" src="' . |
|
673 | - $imageData . '" border="0" />'; |
|
670 | + $html .= '<img style="position: absolute; z-index: 1; left: '. |
|
671 | + $drawing->getOffsetX().'px; top: '.$drawing->getOffsetY().'px; width: '. |
|
672 | + $drawing->getWidth().'px; height: '.$drawing->getHeight().'px;" src="'. |
|
673 | + $imageData.'" border="0" />'; |
|
674 | 674 | $html .= '</div>'; |
675 | 675 | } |
676 | 676 | } elseif ($drawing instanceof MemoryDrawing) { |
@@ -682,13 +682,13 @@ discard block |
||
682 | 682 | $contents = ob_get_contents(); // Instead, output above is saved to $contents |
683 | 683 | ob_end_clean(); // End the output buffer. |
684 | 684 | |
685 | - $dataUri = 'data:image/jpeg;base64,' . base64_encode($contents); |
|
685 | + $dataUri = 'data:image/jpeg;base64,'.base64_encode($contents); |
|
686 | 686 | |
687 | 687 | // Because of the nature of tables, width is more important than height. |
688 | 688 | // max-width: 100% ensures that image doesnt overflow containing cell |
689 | 689 | // width: X sets width of supplied image. |
690 | 690 | // As a result, images bigger than cell will be contained and images smaller will not get stretched |
691 | - $html .= '<img src="' . $dataUri . '" style="max-width:100%;width:' . $drawing->getWidth() . 'px;" />'; |
|
691 | + $html .= '<img src="'.$dataUri.'" style="max-width:100%;width:'.$drawing->getWidth().'px;" />'; |
|
692 | 692 | } |
693 | 693 | } |
694 | 694 | |
@@ -713,7 +713,7 @@ discard block |
||
713 | 713 | if ($chart instanceof Chart) { |
714 | 714 | $chartCoordinates = $chart->getTopLeftPosition(); |
715 | 715 | if ($chartCoordinates['cell'] == $coordinates) { |
716 | - $chartFileName = File::sysGetTempDir() . '/' . uniqid('', true) . '.png'; |
|
716 | + $chartFileName = File::sysGetTempDir().'/'.uniqid('', true).'.png'; |
|
717 | 717 | if (!$chart->render($chartFileName)) { |
718 | 718 | return; |
719 | 719 | } |
@@ -726,10 +726,10 @@ discard block |
||
726 | 726 | // base64 encode the binary data, then break it |
727 | 727 | // into chunks according to RFC 2045 semantics |
728 | 728 | $base64 = chunk_split(base64_encode($picture)); |
729 | - $imageData = 'data:' . $imageDetails['mime'] . ';base64,' . $base64; |
|
729 | + $imageData = 'data:'.$imageDetails['mime'].';base64,'.$base64; |
|
730 | 730 | |
731 | 731 | $html .= '<div style="position: relative;">'; |
732 | - $html .= '<img style="position: absolute; z-index: 1; left: ' . $chartCoordinates['xOffset'] . 'px; top: ' . $chartCoordinates['yOffset'] . 'px; width: ' . $imageDetails[0] . 'px; height: ' . $imageDetails[1] . 'px;" src="' . $imageData . '" border="0" />' . PHP_EOL; |
|
732 | + $html .= '<img style="position: absolute; z-index: 1; left: '.$chartCoordinates['xOffset'].'px; top: '.$chartCoordinates['yOffset'].'px; width: '.$imageDetails[0].'px; height: '.$imageDetails[1].'px;" src="'.$imageData.'" border="0" />'.PHP_EOL; |
|
733 | 733 | $html .= '</div>'; |
734 | 734 | |
735 | 735 | unlink($chartFileName); |
@@ -761,20 +761,20 @@ discard block |
||
761 | 761 | |
762 | 762 | // Start styles |
763 | 763 | if ($generateSurroundingHTML) { |
764 | - $html .= ' <style type="text/css">' . PHP_EOL; |
|
765 | - $html .= ' html { ' . $this->assembleCSS($css['html']) . ' }' . PHP_EOL; |
|
764 | + $html .= ' <style type="text/css">'.PHP_EOL; |
|
765 | + $html .= ' html { '.$this->assembleCSS($css['html']).' }'.PHP_EOL; |
|
766 | 766 | } |
767 | 767 | |
768 | 768 | // Write all other styles |
769 | 769 | foreach ($css as $styleName => $styleDefinition) { |
770 | 770 | if ($styleName != 'html') { |
771 | - $html .= ' ' . $styleName . ' { ' . $this->assembleCSS($styleDefinition) . ' }' . PHP_EOL; |
|
771 | + $html .= ' '.$styleName.' { '.$this->assembleCSS($styleDefinition).' }'.PHP_EOL; |
|
772 | 772 | } |
773 | 773 | } |
774 | 774 | |
775 | 775 | // End styles |
776 | 776 | if ($generateSurroundingHTML) { |
777 | - $html .= ' </style>' . PHP_EOL; |
|
777 | + $html .= ' </style>'.PHP_EOL; |
|
778 | 778 | } |
779 | 779 | |
780 | 780 | // Return |
@@ -862,8 +862,8 @@ discard block |
||
862 | 862 | |
863 | 863 | // Calculate cell style hashes |
864 | 864 | foreach ($this->spreadsheet->getCellXfCollection() as $index => $style) { |
865 | - $css['td.style' . $index] = $this->createCSSStyle($style); |
|
866 | - $css['th.style' . $index] = $this->createCSSStyle($style); |
|
865 | + $css['td.style'.$index] = $this->createCSSStyle($style); |
|
866 | + $css['th.style'.$index] = $this->createCSSStyle($style); |
|
867 | 867 | } |
868 | 868 | |
869 | 869 | // Fetch sheets |
@@ -888,7 +888,7 @@ discard block |
||
888 | 888 | $column = -1; |
889 | 889 | while ($column++ < $highestColumnIndex) { |
890 | 890 | $this->columnWidths[$sheetIndex][$column] = 42; // approximation |
891 | - $css['table.sheet' . $sheetIndex . ' col.col' . $column]['width'] = '42pt'; |
|
891 | + $css['table.sheet'.$sheetIndex.' col.col'.$column]['width'] = '42pt'; |
|
892 | 892 | } |
893 | 893 | |
894 | 894 | // col elements, loop through columnDimensions and set width |
@@ -897,11 +897,11 @@ discard block |
||
897 | 897 | $width = SharedDrawing::pixelsToPoints($width); |
898 | 898 | $column = Coordinate::columnIndexFromString($columnDimension->getColumnIndex()) - 1; |
899 | 899 | $this->columnWidths[$sheetIndex][$column] = $width; |
900 | - $css['table.sheet' . $sheetIndex . ' col.col' . $column]['width'] = $width . 'pt'; |
|
900 | + $css['table.sheet'.$sheetIndex.' col.col'.$column]['width'] = $width.'pt'; |
|
901 | 901 | |
902 | 902 | if ($columnDimension->getVisible() === false) { |
903 | - $css['table.sheet' . $sheetIndex . ' .column' . $column]['visibility'] = 'collapse'; |
|
904 | - $css['table.sheet' . $sheetIndex . ' .column' . $column]['display'] = 'none'; // target IE6+7 |
|
903 | + $css['table.sheet'.$sheetIndex.' .column'.$column]['visibility'] = 'collapse'; |
|
904 | + $css['table.sheet'.$sheetIndex.' .column'.$column]['display'] = 'none'; // target IE6+7 |
|
905 | 905 | } |
906 | 906 | } |
907 | 907 | } |
@@ -910,17 +910,17 @@ discard block |
||
910 | 910 | $rowDimension = $sheet->getDefaultRowDimension(); |
911 | 911 | |
912 | 912 | // table.sheetN tr { } |
913 | - $css['table.sheet' . $sheetIndex . ' tr'] = []; |
|
913 | + $css['table.sheet'.$sheetIndex.' tr'] = []; |
|
914 | 914 | |
915 | 915 | if ($rowDimension->getRowHeight() == -1) { |
916 | 916 | $pt_height = SharedFont::getDefaultRowHeightByFont($this->spreadsheet->getDefaultStyle()->getFont()); |
917 | 917 | } else { |
918 | 918 | $pt_height = $rowDimension->getRowHeight(); |
919 | 919 | } |
920 | - $css['table.sheet' . $sheetIndex . ' tr']['height'] = $pt_height . 'pt'; |
|
920 | + $css['table.sheet'.$sheetIndex.' tr']['height'] = $pt_height.'pt'; |
|
921 | 921 | if ($rowDimension->getVisible() === false) { |
922 | - $css['table.sheet' . $sheetIndex . ' tr']['display'] = 'none'; |
|
923 | - $css['table.sheet' . $sheetIndex . ' tr']['visibility'] = 'hidden'; |
|
922 | + $css['table.sheet'.$sheetIndex.' tr']['display'] = 'none'; |
|
923 | + $css['table.sheet'.$sheetIndex.' tr']['visibility'] = 'hidden'; |
|
924 | 924 | } |
925 | 925 | |
926 | 926 | // Calculate row heights |
@@ -928,17 +928,17 @@ discard block |
||
928 | 928 | $row = $rowDimension->getRowIndex() - 1; |
929 | 929 | |
930 | 930 | // table.sheetN tr.rowYYYYYY { } |
931 | - $css['table.sheet' . $sheetIndex . ' tr.row' . $row] = []; |
|
931 | + $css['table.sheet'.$sheetIndex.' tr.row'.$row] = []; |
|
932 | 932 | |
933 | 933 | if ($rowDimension->getRowHeight() == -1) { |
934 | 934 | $pt_height = SharedFont::getDefaultRowHeightByFont($this->spreadsheet->getDefaultStyle()->getFont()); |
935 | 935 | } else { |
936 | 936 | $pt_height = $rowDimension->getRowHeight(); |
937 | 937 | } |
938 | - $css['table.sheet' . $sheetIndex . ' tr.row' . $row]['height'] = $pt_height . 'pt'; |
|
938 | + $css['table.sheet'.$sheetIndex.' tr.row'.$row]['height'] = $pt_height.'pt'; |
|
939 | 939 | if ($rowDimension->getVisible() === false) { |
940 | - $css['table.sheet' . $sheetIndex . ' tr.row' . $row]['display'] = 'none'; |
|
941 | - $css['table.sheet' . $sheetIndex . ' tr.row' . $row]['visibility'] = 'hidden'; |
|
940 | + $css['table.sheet'.$sheetIndex.' tr.row'.$row]['display'] = 'none'; |
|
941 | + $css['table.sheet'.$sheetIndex.' tr.row'.$row]['visibility'] = 'hidden'; |
|
942 | 942 | } |
943 | 943 | } |
944 | 944 | } |
@@ -987,7 +987,7 @@ discard block |
||
987 | 987 | if ($textAlign = $this->mapHAlign($pStyle->getHorizontal())) { |
988 | 988 | $css['text-align'] = $textAlign; |
989 | 989 | if (in_array($textAlign, ['left', 'right'])) { |
990 | - $css['padding-' . $textAlign] = (string) ((int) $pStyle->getIndent() * 9) . 'px'; |
|
990 | + $css['padding-'.$textAlign] = (string) ((int) $pStyle->getIndent() * 9).'px'; |
|
991 | 991 | } |
992 | 992 | } |
993 | 993 | |
@@ -1021,9 +1021,9 @@ discard block |
||
1021 | 1021 | $css['font-style'] = 'italic'; |
1022 | 1022 | } |
1023 | 1023 | |
1024 | - $css['color'] = '#' . $pStyle->getColor()->getRGB(); |
|
1025 | - $css['font-family'] = '\'' . $pStyle->getName() . '\''; |
|
1026 | - $css['font-size'] = $pStyle->getSize() . 'pt'; |
|
1024 | + $css['color'] = '#'.$pStyle->getColor()->getRGB(); |
|
1025 | + $css['font-family'] = '\''.$pStyle->getName().'\''; |
|
1026 | + $css['font-size'] = $pStyle->getSize().'pt'; |
|
1027 | 1027 | |
1028 | 1028 | return $css; |
1029 | 1029 | } |
@@ -1061,7 +1061,7 @@ discard block |
||
1061 | 1061 | // Create CSS - add !important to non-none border styles for merged cells |
1062 | 1062 | $borderStyle = $this->mapBorderStyle($pStyle->getBorderStyle()); |
1063 | 1063 | |
1064 | - return $borderStyle . ' #' . $pStyle->getColor()->getRGB() . (($borderStyle == 'none') ? '' : ' !important'); |
|
1064 | + return $borderStyle.' #'.$pStyle->getColor()->getRGB().(($borderStyle == 'none') ? '' : ' !important'); |
|
1065 | 1065 | } |
1066 | 1066 | |
1067 | 1067 | /** |
@@ -1078,7 +1078,7 @@ discard block |
||
1078 | 1078 | |
1079 | 1079 | // Create CSS |
1080 | 1080 | $value = $pStyle->getFillType() == Fill::FILL_NONE ? |
1081 | - 'white' : '#' . $pStyle->getStartColor()->getRGB(); |
|
1081 | + 'white' : '#'.$pStyle->getStartColor()->getRGB(); |
|
1082 | 1082 | $css['background-color'] = $value; |
1083 | 1083 | |
1084 | 1084 | return $css; |
@@ -1091,8 +1091,8 @@ discard block |
||
1091 | 1091 | { |
1092 | 1092 | // Construct HTML |
1093 | 1093 | $html = ''; |
1094 | - $html .= ' </body>' . PHP_EOL; |
|
1095 | - $html .= '</html>' . PHP_EOL; |
|
1094 | + $html .= ' </body>'.PHP_EOL; |
|
1095 | + $html .= '</html>'.PHP_EOL; |
|
1096 | 1096 | |
1097 | 1097 | return $html; |
1098 | 1098 | } |
@@ -1116,15 +1116,15 @@ discard block |
||
1116 | 1116 | |
1117 | 1117 | if (!$this->useInlineCss) { |
1118 | 1118 | $gridlines = $pSheet->getShowGridlines() ? ' gridlines' : ''; |
1119 | - $html .= ' <table border="0" cellpadding="0" cellspacing="0" id="sheet' . $sheetIndex . '" class="sheet' . $sheetIndex . $gridlines . '">' . PHP_EOL; |
|
1119 | + $html .= ' <table border="0" cellpadding="0" cellspacing="0" id="sheet'.$sheetIndex.'" class="sheet'.$sheetIndex.$gridlines.'">'.PHP_EOL; |
|
1120 | 1120 | } else { |
1121 | 1121 | $style = isset($this->cssStyles['table']) ? |
1122 | 1122 | $this->assembleCSS($this->cssStyles['table']) : ''; |
1123 | 1123 | |
1124 | 1124 | if ($this->isPdf && $pSheet->getShowGridlines()) { |
1125 | - $html .= ' <table border="1" cellpadding="1" id="sheet' . $sheetIndex . '" cellspacing="1" style="' . $style . '">' . PHP_EOL; |
|
1125 | + $html .= ' <table border="1" cellpadding="1" id="sheet'.$sheetIndex.'" cellspacing="1" style="'.$style.'">'.PHP_EOL; |
|
1126 | 1126 | } else { |
1127 | - $html .= ' <table border="0" cellpadding="1" id="sheet' . $sheetIndex . '" cellspacing="0" style="' . $style . '">' . PHP_EOL; |
|
1127 | + $html .= ' <table border="0" cellpadding="1" id="sheet'.$sheetIndex.'" cellspacing="0" style="'.$style.'">'.PHP_EOL; |
|
1128 | 1128 | } |
1129 | 1129 | } |
1130 | 1130 | |
@@ -1134,11 +1134,11 @@ discard block |
||
1134 | 1134 | while ($i++ < $highestColumnIndex) { |
1135 | 1135 | if (!$this->isPdf) { |
1136 | 1136 | if (!$this->useInlineCss) { |
1137 | - $html .= ' <col class="col' . $i . '">' . PHP_EOL; |
|
1137 | + $html .= ' <col class="col'.$i.'">'.PHP_EOL; |
|
1138 | 1138 | } else { |
1139 | - $style = isset($this->cssStyles['table.sheet' . $sheetIndex . ' col.col' . $i]) ? |
|
1140 | - $this->assembleCSS($this->cssStyles['table.sheet' . $sheetIndex . ' col.col' . $i]) : ''; |
|
1141 | - $html .= ' <col style="' . $style . '">' . PHP_EOL; |
|
1139 | + $style = isset($this->cssStyles['table.sheet'.$sheetIndex.' col.col'.$i]) ? |
|
1140 | + $this->assembleCSS($this->cssStyles['table.sheet'.$sheetIndex.' col.col'.$i]) : ''; |
|
1141 | + $html .= ' <col style="'.$style.'">'.PHP_EOL; |
|
1142 | 1142 | } |
1143 | 1143 | } |
1144 | 1144 | } |
@@ -1151,7 +1151,7 @@ discard block |
||
1151 | 1151 | */ |
1152 | 1152 | private function generateTableFooter() |
1153 | 1153 | { |
1154 | - return ' </table>' . PHP_EOL; |
|
1154 | + return ' </table>'.PHP_EOL; |
|
1155 | 1155 | } |
1156 | 1156 | |
1157 | 1157 | /** |
@@ -1179,7 +1179,7 @@ discard block |
||
1179 | 1179 | $breaks = $pSheet->getBreaks(); |
1180 | 1180 | |
1181 | 1181 | // check if a break is needed before this row |
1182 | - if (isset($breaks['A' . $pRow])) { |
|
1182 | + if (isset($breaks['A'.$pRow])) { |
|
1183 | 1183 | // close table: </table> |
1184 | 1184 | $html .= $this->generateTableFooter(); |
1185 | 1185 | |
@@ -1193,30 +1193,30 @@ discard block |
||
1193 | 1193 | |
1194 | 1194 | // Write row start |
1195 | 1195 | if (!$this->useInlineCss) { |
1196 | - $html .= ' <tr class="row' . $pRow . '">' . PHP_EOL; |
|
1196 | + $html .= ' <tr class="row'.$pRow.'">'.PHP_EOL; |
|
1197 | 1197 | } else { |
1198 | - $style = isset($this->cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]) |
|
1199 | - ? $this->assembleCSS($this->cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]) : ''; |
|
1198 | + $style = isset($this->cssStyles['table.sheet'.$sheetIndex.' tr.row'.$pRow]) |
|
1199 | + ? $this->assembleCSS($this->cssStyles['table.sheet'.$sheetIndex.' tr.row'.$pRow]) : ''; |
|
1200 | 1200 | |
1201 | - $html .= ' <tr style="' . $style . '">' . PHP_EOL; |
|
1201 | + $html .= ' <tr style="'.$style.'">'.PHP_EOL; |
|
1202 | 1202 | } |
1203 | 1203 | |
1204 | 1204 | // Write cells |
1205 | 1205 | $colNum = 0; |
1206 | 1206 | foreach ($pValues as $cellAddress) { |
1207 | 1207 | $cell = ($cellAddress > '') ? $pSheet->getCell($cellAddress) : ''; |
1208 | - $coordinate = Coordinate::stringFromColumnIndex($colNum + 1) . ($pRow + 1); |
|
1208 | + $coordinate = Coordinate::stringFromColumnIndex($colNum + 1).($pRow + 1); |
|
1209 | 1209 | if (!$this->useInlineCss) { |
1210 | - $cssClass = 'column' . $colNum; |
|
1210 | + $cssClass = 'column'.$colNum; |
|
1211 | 1211 | } else { |
1212 | 1212 | $cssClass = []; |
1213 | 1213 | if ($cellType == 'th') { |
1214 | - if (isset($this->cssStyles['table.sheet' . $sheetIndex . ' th.column' . $colNum])) { |
|
1215 | - $this->cssStyles['table.sheet' . $sheetIndex . ' th.column' . $colNum]; |
|
1214 | + if (isset($this->cssStyles['table.sheet'.$sheetIndex.' th.column'.$colNum])) { |
|
1215 | + $this->cssStyles['table.sheet'.$sheetIndex.' th.column'.$colNum]; |
|
1216 | 1216 | } |
1217 | 1217 | } else { |
1218 | - if (isset($this->cssStyles['table.sheet' . $sheetIndex . ' td.column' . $colNum])) { |
|
1219 | - $this->cssStyles['table.sheet' . $sheetIndex . ' td.column' . $colNum]; |
|
1218 | + if (isset($this->cssStyles['table.sheet'.$sheetIndex.' td.column'.$colNum])) { |
|
1219 | + $this->cssStyles['table.sheet'.$sheetIndex.' td.column'.$colNum]; |
|
1220 | 1220 | } |
1221 | 1221 | } |
1222 | 1222 | } |
@@ -1239,7 +1239,7 @@ discard block |
||
1239 | 1239 | foreach ($elements as $element) { |
1240 | 1240 | // Rich text start? |
1241 | 1241 | if ($element instanceof Run) { |
1242 | - $cellData .= '<span style="' . $this->assembleCSS($this->createCSSStyleFont($element->getFont())) . '">'; |
|
1242 | + $cellData .= '<span style="'.$this->assembleCSS($this->createCSSStyleFont($element->getFont())).'">'; |
|
1243 | 1243 | |
1244 | 1244 | if ($element->getFont()->getSuperscript()) { |
1245 | 1245 | $cellData .= '<sup>'; |
@@ -1278,9 +1278,9 @@ discard block |
||
1278 | 1278 | } |
1279 | 1279 | $cellData = htmlspecialchars($cellData); |
1280 | 1280 | if ($pSheet->getParent()->getCellXfByIndex($cell->getXfIndex())->getFont()->getSuperscript()) { |
1281 | - $cellData = '<sup>' . $cellData . '</sup>'; |
|
1281 | + $cellData = '<sup>'.$cellData.'</sup>'; |
|
1282 | 1282 | } elseif ($pSheet->getParent()->getCellXfByIndex($cell->getXfIndex())->getFont()->getSubscript()) { |
1283 | - $cellData = '<sub>' . $cellData . '</sub>'; |
|
1283 | + $cellData = '<sub>'.$cellData.'</sub>'; |
|
1284 | 1284 | } |
1285 | 1285 | } |
1286 | 1286 | |
@@ -1293,32 +1293,32 @@ discard block |
||
1293 | 1293 | |
1294 | 1294 | // Extend CSS class? |
1295 | 1295 | if (!$this->useInlineCss) { |
1296 | - $cssClass .= ' style' . $cell->getXfIndex(); |
|
1297 | - $cssClass .= ' ' . $cell->getDataType(); |
|
1296 | + $cssClass .= ' style'.$cell->getXfIndex(); |
|
1297 | + $cssClass .= ' '.$cell->getDataType(); |
|
1298 | 1298 | } else { |
1299 | 1299 | if ($cellType == 'th') { |
1300 | - if (isset($this->cssStyles['th.style' . $cell->getXfIndex()])) { |
|
1301 | - $cssClass = array_merge($cssClass, $this->cssStyles['th.style' . $cell->getXfIndex()]); |
|
1300 | + if (isset($this->cssStyles['th.style'.$cell->getXfIndex()])) { |
|
1301 | + $cssClass = array_merge($cssClass, $this->cssStyles['th.style'.$cell->getXfIndex()]); |
|
1302 | 1302 | } |
1303 | 1303 | } else { |
1304 | - if (isset($this->cssStyles['td.style' . $cell->getXfIndex()])) { |
|
1305 | - $cssClass = array_merge($cssClass, $this->cssStyles['td.style' . $cell->getXfIndex()]); |
|
1304 | + if (isset($this->cssStyles['td.style'.$cell->getXfIndex()])) { |
|
1305 | + $cssClass = array_merge($cssClass, $this->cssStyles['td.style'.$cell->getXfIndex()]); |
|
1306 | 1306 | } |
1307 | 1307 | } |
1308 | 1308 | |
1309 | 1309 | // General horizontal alignment: Actual horizontal alignment depends on dataType |
1310 | 1310 | $sharedStyle = $pSheet->getParent()->getCellXfByIndex($cell->getXfIndex()); |
1311 | 1311 | if ($sharedStyle->getAlignment()->getHorizontal() == Alignment::HORIZONTAL_GENERAL |
1312 | - && isset($this->cssStyles['.' . $cell->getDataType()]['text-align']) |
|
1312 | + && isset($this->cssStyles['.'.$cell->getDataType()]['text-align']) |
|
1313 | 1313 | ) { |
1314 | - $cssClass['text-align'] = $this->cssStyles['.' . $cell->getDataType()]['text-align']; |
|
1314 | + $cssClass['text-align'] = $this->cssStyles['.'.$cell->getDataType()]['text-align']; |
|
1315 | 1315 | } |
1316 | 1316 | } |
1317 | 1317 | } |
1318 | 1318 | |
1319 | 1319 | // Hyperlink? |
1320 | 1320 | if ($pSheet->hyperlinkExists($coordinate) && !$pSheet->getHyperlink($coordinate)->isInternal()) { |
1321 | - $cellData = '<a href="' . htmlspecialchars($pSheet->getHyperlink($coordinate)->getUrl()) . '" title="' . htmlspecialchars($pSheet->getHyperlink($coordinate)->getTooltip()) . '">' . $cellData . '</a>'; |
|
1321 | + $cellData = '<a href="'.htmlspecialchars($pSheet->getHyperlink($coordinate)->getUrl()).'" title="'.htmlspecialchars($pSheet->getHyperlink($coordinate)->getTooltip()).'">'.$cellData.'</a>'; |
|
1322 | 1322 | } |
1323 | 1323 | |
1324 | 1324 | // Should the cell be written or is it swallowed by a rowspan or colspan? |
@@ -1335,18 +1335,18 @@ discard block |
||
1335 | 1335 | |
1336 | 1336 | // Also apply style from last cell in merge to fix borders - |
1337 | 1337 | // relies on !important for non-none border declarations in createCSSStyleBorder |
1338 | - $endCellCoord = Coordinate::stringFromColumnIndex($colNum + $colSpan) . ($pRow + $rowSpan); |
|
1338 | + $endCellCoord = Coordinate::stringFromColumnIndex($colNum + $colSpan).($pRow + $rowSpan); |
|
1339 | 1339 | if (!$this->useInlineCss) { |
1340 | - $cssClass .= ' style' . $pSheet->getCell($endCellCoord)->getXfIndex(); |
|
1340 | + $cssClass .= ' style'.$pSheet->getCell($endCellCoord)->getXfIndex(); |
|
1341 | 1341 | } |
1342 | 1342 | } |
1343 | 1343 | |
1344 | 1344 | // Write |
1345 | 1345 | if ($writeCell) { |
1346 | 1346 | // Column start |
1347 | - $html .= ' <' . $cellType; |
|
1347 | + $html .= ' <'.$cellType; |
|
1348 | 1348 | if (!$this->useInlineCss) { |
1349 | - $html .= ' class="' . $cssClass . '"'; |
|
1349 | + $html .= ' class="'.$cssClass.'"'; |
|
1350 | 1350 | } else { |
1351 | 1351 | //** Necessary redundant code for the sake of \PhpOffice\PhpSpreadsheet\Writer\Pdf ** |
1352 | 1352 | // We must explicitly write the width of the <td> element because TCPDF |
@@ -1359,23 +1359,23 @@ discard block |
||
1359 | 1359 | $width += $this->columnWidths[$sheetIndex][$i]; |
1360 | 1360 | } |
1361 | 1361 | } |
1362 | - $cssClass['width'] = $width . 'pt'; |
|
1362 | + $cssClass['width'] = $width.'pt'; |
|
1363 | 1363 | |
1364 | 1364 | // We must also explicitly write the height of the <td> element because TCPDF |
1365 | 1365 | // does not recognize e.g. <tr style="height:50pt"> |
1366 | - if (isset($this->cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]['height'])) { |
|
1367 | - $height = $this->cssStyles['table.sheet' . $sheetIndex . ' tr.row' . $pRow]['height']; |
|
1366 | + if (isset($this->cssStyles['table.sheet'.$sheetIndex.' tr.row'.$pRow]['height'])) { |
|
1367 | + $height = $this->cssStyles['table.sheet'.$sheetIndex.' tr.row'.$pRow]['height']; |
|
1368 | 1368 | $cssClass['height'] = $height; |
1369 | 1369 | } |
1370 | 1370 | //** end of redundant code ** |
1371 | 1371 | |
1372 | - $html .= ' style="' . $this->assembleCSS($cssClass) . '"'; |
|
1372 | + $html .= ' style="'.$this->assembleCSS($cssClass).'"'; |
|
1373 | 1373 | } |
1374 | 1374 | if ($colSpan > 1) { |
1375 | - $html .= ' colspan="' . $colSpan . '"'; |
|
1375 | + $html .= ' colspan="'.$colSpan.'"'; |
|
1376 | 1376 | } |
1377 | 1377 | if ($rowSpan > 1) { |
1378 | - $html .= ' rowspan="' . $rowSpan . '"'; |
|
1378 | + $html .= ' rowspan="'.$rowSpan.'"'; |
|
1379 | 1379 | } |
1380 | 1380 | $html .= '>'; |
1381 | 1381 | |
@@ -1393,7 +1393,7 @@ discard block |
||
1393 | 1393 | $html .= $cellData; |
1394 | 1394 | |
1395 | 1395 | // Column end |
1396 | - $html .= '</' . $cellType . '>' . PHP_EOL; |
|
1396 | + $html .= '</'.$cellType.'>'.PHP_EOL; |
|
1397 | 1397 | } |
1398 | 1398 | |
1399 | 1399 | // Next column |
@@ -1401,7 +1401,7 @@ discard block |
||
1401 | 1401 | } |
1402 | 1402 | |
1403 | 1403 | // Write row end |
1404 | - $html .= ' </tr>' . PHP_EOL; |
|
1404 | + $html .= ' </tr>'.PHP_EOL; |
|
1405 | 1405 | |
1406 | 1406 | // Return |
1407 | 1407 | return $html; |
@@ -1418,7 +1418,7 @@ discard block |
||
1418 | 1418 | { |
1419 | 1419 | $pairs = []; |
1420 | 1420 | foreach ($pValue as $property => $value) { |
1421 | - $pairs[] = $property . ':' . $value; |
|
1421 | + $pairs[] = $property.':'.$value; |
|
1422 | 1422 | } |
1423 | 1423 | $string = implode('; ', $pairs); |
1424 | 1424 | |
@@ -1546,7 +1546,7 @@ discard block |
||
1546 | 1546 | |
1547 | 1547 | // color span tag |
1548 | 1548 | if ($color !== null) { |
1549 | - $value = '<span style="color:' . $color . '">' . $value . '</span>'; |
|
1549 | + $value = '<span style="color:'.$color.'">'.$value.'</span>'; |
|
1550 | 1550 | } |
1551 | 1551 | |
1552 | 1552 | return $value; |
@@ -1647,23 +1647,23 @@ discard block |
||
1647 | 1647 | $htmlPage = '@page { '; |
1648 | 1648 | $htmlBody = 'body { '; |
1649 | 1649 | |
1650 | - $left = StringHelper::formatNumber($pSheet->getPageMargins()->getLeft()) . 'in; '; |
|
1651 | - $htmlPage .= 'margin-left: ' . $left; |
|
1652 | - $htmlBody .= 'margin-left: ' . $left; |
|
1653 | - $right = StringHelper::formatNumber($pSheet->getPageMargins()->getRight()) . 'in; '; |
|
1654 | - $htmlPage .= 'margin-right: ' . $right; |
|
1655 | - $htmlBody .= 'margin-right: ' . $right; |
|
1656 | - $top = StringHelper::formatNumber($pSheet->getPageMargins()->getTop()) . 'in; '; |
|
1657 | - $htmlPage .= 'margin-top: ' . $top; |
|
1658 | - $htmlBody .= 'margin-top: ' . $top; |
|
1659 | - $bottom = StringHelper::formatNumber($pSheet->getPageMargins()->getBottom()) . 'in; '; |
|
1660 | - $htmlPage .= 'margin-bottom: ' . $bottom; |
|
1661 | - $htmlBody .= 'margin-bottom: ' . $bottom; |
|
1650 | + $left = StringHelper::formatNumber($pSheet->getPageMargins()->getLeft()).'in; '; |
|
1651 | + $htmlPage .= 'margin-left: '.$left; |
|
1652 | + $htmlBody .= 'margin-left: '.$left; |
|
1653 | + $right = StringHelper::formatNumber($pSheet->getPageMargins()->getRight()).'in; '; |
|
1654 | + $htmlPage .= 'margin-right: '.$right; |
|
1655 | + $htmlBody .= 'margin-right: '.$right; |
|
1656 | + $top = StringHelper::formatNumber($pSheet->getPageMargins()->getTop()).'in; '; |
|
1657 | + $htmlPage .= 'margin-top: '.$top; |
|
1658 | + $htmlBody .= 'margin-top: '.$top; |
|
1659 | + $bottom = StringHelper::formatNumber($pSheet->getPageMargins()->getBottom()).'in; '; |
|
1660 | + $htmlPage .= 'margin-bottom: '.$bottom; |
|
1661 | + $htmlBody .= 'margin-bottom: '.$bottom; |
|
1662 | 1662 | |
1663 | 1663 | $htmlPage .= "}\n"; |
1664 | 1664 | $htmlBody .= "}\n"; |
1665 | 1665 | |
1666 | - return "<style>\n" . $htmlPage . $htmlBody . "</style>\n"; |
|
1666 | + return "<style>\n".$htmlPage.$htmlBody."</style>\n"; |
|
1667 | 1667 | } |
1668 | 1668 | |
1669 | 1669 | /** |
@@ -1681,7 +1681,7 @@ discard block |
||
1681 | 1681 | $result = ''; |
1682 | 1682 | if (!$this->isPdf && isset($pSheet->getComments()[$coordinate])) { |
1683 | 1683 | $result .= '<a class="comment-indicator"></a>'; |
1684 | - $result .= '<div class="comment">' . nl2br($pSheet->getComment($coordinate)->getText()->getPlainText()) . '</div>'; |
|
1684 | + $result .= '<div class="comment">'.nl2br($pSheet->getComment($coordinate)->getText()->getPlainText()).'</div>'; |
|
1685 | 1685 | $result .= PHP_EOL; |
1686 | 1686 | } |
1687 | 1687 |
@@ -5,7 +5,7 @@ discard block |
||
5 | 5 | use PhpOffice\PhpSpreadsheet\Chart\Chart; |
6 | 6 | use PhpOffice\PhpSpreadsheet\Style\NumberFormat; |
7 | 7 | |
8 | -require_once __DIR__ . '/Polyfill.php'; |
|
8 | +require_once __DIR__.'/Polyfill.php'; |
|
9 | 9 | |
10 | 10 | class JpGraph implements IRenderer |
11 | 11 | { |
@@ -843,7 +843,7 @@ discard block |
||
843 | 843 | |
844 | 844 | break; |
845 | 845 | default: |
846 | - echo $chartType . ' is not yet implemented<br />'; |
|
846 | + echo $chartType.' is not yet implemented<br />'; |
|
847 | 847 | |
848 | 848 | return false; |
849 | 849 | } |
@@ -132,7 +132,7 @@ |
||
132 | 132 | |
133 | 133 | protected function getTrueAlpha($alpha) |
134 | 134 | { |
135 | - return (string) 100 - $alpha . '000'; |
|
135 | + return (string) 100 - $alpha.'000'; |
|
136 | 136 | } |
137 | 137 | |
138 | 138 | protected function setColorProperties($color, $alpha, $type) |
@@ -362,7 +362,7 @@ |
||
362 | 362 | $calcEngine = Calculation::getInstance($worksheet->getParent()); |
363 | 363 | $newDataValues = Calculation::unwrapResult( |
364 | 364 | $calcEngine->_calculateFormulaValue( |
365 | - '=' . $this->dataSource, |
|
365 | + '='.$this->dataSource, |
|
366 | 366 | null, |
367 | 367 | $worksheet->getCell('A1') |
368 | 368 | ) |
@@ -291,15 +291,15 @@ |
||
291 | 291 | public function getHashCode() |
292 | 292 | { |
293 | 293 | return md5( |
294 | - $this->author . |
|
295 | - $this->text->getHashCode() . |
|
296 | - $this->width . |
|
297 | - $this->height . |
|
298 | - $this->marginLeft . |
|
299 | - $this->marginTop . |
|
300 | - ($this->visible ? 1 : 0) . |
|
301 | - $this->fillColor->getHashCode() . |
|
302 | - $this->alignment . |
|
294 | + $this->author. |
|
295 | + $this->text->getHashCode(). |
|
296 | + $this->width. |
|
297 | + $this->height. |
|
298 | + $this->marginLeft. |
|
299 | + $this->marginTop. |
|
300 | + ($this->visible ? 1 : 0). |
|
301 | + $this->fillColor->getHashCode(). |
|
302 | + $this->alignment. |
|
303 | 303 | __CLASS__ |
304 | 304 | ); |
305 | 305 | } |
@@ -2260,8 +2260,8 @@ discard block |
||
2260 | 2260 | |
2261 | 2261 | private static function loadLocales() |
2262 | 2262 | { |
2263 | - $localeFileDirectory = __DIR__ . '/locale/'; |
|
2264 | - foreach (glob($localeFileDirectory . '*', GLOB_ONLYDIR) as $filename) { |
|
2263 | + $localeFileDirectory = __DIR__.'/locale/'; |
|
2264 | + foreach (glob($localeFileDirectory.'*', GLOB_ONLYDIR) as $filename) { |
|
2265 | 2265 | $filename = substr($filename, strlen($localeFileDirectory)); |
2266 | 2266 | if ($filename != 'en') { |
2267 | 2267 | self::$validLocaleLanguages[] = $filename; |
@@ -2506,10 +2506,10 @@ discard block |
||
2506 | 2506 | // Default is English, if user isn't requesting english, then read the necessary data from the locale files |
2507 | 2507 | if ($locale != 'en_us') { |
2508 | 2508 | // Search for a file with a list of function names for locale |
2509 | - $functionNamesFile = __DIR__ . '/locale/' . str_replace('_', DIRECTORY_SEPARATOR, $locale) . DIRECTORY_SEPARATOR . 'functions'; |
|
2509 | + $functionNamesFile = __DIR__.'/locale/'.str_replace('_', DIRECTORY_SEPARATOR, $locale).DIRECTORY_SEPARATOR.'functions'; |
|
2510 | 2510 | if (!file_exists($functionNamesFile)) { |
2511 | 2511 | // If there isn't a locale specific function file, look for a language specific function file |
2512 | - $functionNamesFile = __DIR__ . '/locale/' . $language . DIRECTORY_SEPARATOR . 'functions'; |
|
2512 | + $functionNamesFile = __DIR__.'/locale/'.$language.DIRECTORY_SEPARATOR.'functions'; |
|
2513 | 2513 | if (!file_exists($functionNamesFile)) { |
2514 | 2514 | return false; |
2515 | 2515 | } |
@@ -2535,9 +2535,9 @@ discard block |
||
2535 | 2535 | self::$localeBoolean['FALSE'] = self::$localeFunctions['FALSE']; |
2536 | 2536 | } |
2537 | 2537 | |
2538 | - $configFile = __DIR__ . '/locale/' . str_replace('_', DIRECTORY_SEPARATOR, $locale) . DIRECTORY_SEPARATOR . 'config'; |
|
2538 | + $configFile = __DIR__.'/locale/'.str_replace('_', DIRECTORY_SEPARATOR, $locale).DIRECTORY_SEPARATOR.'config'; |
|
2539 | 2539 | if (!file_exists($configFile)) { |
2540 | - $configFile = __DIR__ . '/locale/' . $language . DIRECTORY_SEPARATOR . 'config'; |
|
2540 | + $configFile = __DIR__.'/locale/'.$language.DIRECTORY_SEPARATOR.'config'; |
|
2541 | 2541 | } |
2542 | 2542 | if (file_exists($configFile)) { |
2543 | 2543 | $localeSettings = file($configFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); |
@@ -2591,7 +2591,7 @@ discard block |
||
2591 | 2591 | break; |
2592 | 2592 | case $fromSeparator: |
2593 | 2593 | if (!$inBraces) { |
2594 | - $formula = mb_substr($formula, 0, $i) . $toSeparator . mb_substr($formula, $i + 1); |
|
2594 | + $formula = mb_substr($formula, 0, $i).$toSeparator.mb_substr($formula, $i + 1); |
|
2595 | 2595 | } |
2596 | 2596 | } |
2597 | 2597 | } |
@@ -2648,20 +2648,20 @@ discard block |
||
2648 | 2648 | if (self::$functionReplaceFromExcel === null) { |
2649 | 2649 | self::$functionReplaceFromExcel = []; |
2650 | 2650 | foreach (array_keys(self::$localeFunctions) as $excelFunctionName) { |
2651 | - self::$functionReplaceFromExcel[] = '/(@?[^\w\.])' . preg_quote($excelFunctionName, '/') . '([\s]*\()/Ui'; |
|
2651 | + self::$functionReplaceFromExcel[] = '/(@?[^\w\.])'.preg_quote($excelFunctionName, '/').'([\s]*\()/Ui'; |
|
2652 | 2652 | } |
2653 | 2653 | foreach (array_keys(self::$localeBoolean) as $excelBoolean) { |
2654 | - self::$functionReplaceFromExcel[] = '/(@?[^\w\.])' . preg_quote($excelBoolean, '/') . '([^\w\.])/Ui'; |
|
2654 | + self::$functionReplaceFromExcel[] = '/(@?[^\w\.])'.preg_quote($excelBoolean, '/').'([^\w\.])/Ui'; |
|
2655 | 2655 | } |
2656 | 2656 | } |
2657 | 2657 | |
2658 | 2658 | if (self::$functionReplaceToLocale === null) { |
2659 | 2659 | self::$functionReplaceToLocale = []; |
2660 | 2660 | foreach (self::$localeFunctions as $localeFunctionName) { |
2661 | - self::$functionReplaceToLocale[] = '$1' . trim($localeFunctionName) . '$2'; |
|
2661 | + self::$functionReplaceToLocale[] = '$1'.trim($localeFunctionName).'$2'; |
|
2662 | 2662 | } |
2663 | 2663 | foreach (self::$localeBoolean as $localeBoolean) { |
2664 | - self::$functionReplaceToLocale[] = '$1' . trim($localeBoolean) . '$2'; |
|
2664 | + self::$functionReplaceToLocale[] = '$1'.trim($localeBoolean).'$2'; |
|
2665 | 2665 | } |
2666 | 2666 | } |
2667 | 2667 | |
@@ -2677,20 +2677,20 @@ discard block |
||
2677 | 2677 | if (self::$functionReplaceFromLocale === null) { |
2678 | 2678 | self::$functionReplaceFromLocale = []; |
2679 | 2679 | foreach (self::$localeFunctions as $localeFunctionName) { |
2680 | - self::$functionReplaceFromLocale[] = '/(@?[^\w\.])' . preg_quote($localeFunctionName, '/') . '([\s]*\()/Ui'; |
|
2680 | + self::$functionReplaceFromLocale[] = '/(@?[^\w\.])'.preg_quote($localeFunctionName, '/').'([\s]*\()/Ui'; |
|
2681 | 2681 | } |
2682 | 2682 | foreach (self::$localeBoolean as $excelBoolean) { |
2683 | - self::$functionReplaceFromLocale[] = '/(@?[^\w\.])' . preg_quote($excelBoolean, '/') . '([^\w\.])/Ui'; |
|
2683 | + self::$functionReplaceFromLocale[] = '/(@?[^\w\.])'.preg_quote($excelBoolean, '/').'([^\w\.])/Ui'; |
|
2684 | 2684 | } |
2685 | 2685 | } |
2686 | 2686 | |
2687 | 2687 | if (self::$functionReplaceToExcel === null) { |
2688 | 2688 | self::$functionReplaceToExcel = []; |
2689 | 2689 | foreach (array_keys(self::$localeFunctions) as $excelFunctionName) { |
2690 | - self::$functionReplaceToExcel[] = '$1' . trim($excelFunctionName) . '$2'; |
|
2690 | + self::$functionReplaceToExcel[] = '$1'.trim($excelFunctionName).'$2'; |
|
2691 | 2691 | } |
2692 | 2692 | foreach (array_keys(self::$localeBoolean) as $excelBoolean) { |
2693 | - self::$functionReplaceToExcel[] = '$1' . trim($excelBoolean) . '$2'; |
|
2693 | + self::$functionReplaceToExcel[] = '$1'.trim($excelBoolean).'$2'; |
|
2694 | 2694 | } |
2695 | 2695 | } |
2696 | 2696 | |
@@ -2724,12 +2724,12 @@ discard block |
||
2724 | 2724 | { |
2725 | 2725 | if (is_string($value)) { |
2726 | 2726 | // Error values cannot be "wrapped" |
2727 | - if (preg_match('/^' . self::CALCULATION_REGEXP_ERROR . '$/i', $value, $match)) { |
|
2727 | + if (preg_match('/^'.self::CALCULATION_REGEXP_ERROR.'$/i', $value, $match)) { |
|
2728 | 2728 | // Return Excel errors "as is" |
2729 | 2729 | return $value; |
2730 | 2730 | } |
2731 | 2731 | // Return strings wrapped in quotes |
2732 | - return '"' . $value . '"'; |
|
2732 | + return '"'.$value.'"'; |
|
2733 | 2733 | // Convert numeric errors to NaN error |
2734 | 2734 | } elseif ((is_float($value)) && ((is_nan($value)) || (is_infinite($value)))) { |
2735 | 2735 | return Functions::NAN(); |
@@ -2995,7 +2995,7 @@ discard block |
||
2995 | 2995 | |
2996 | 2996 | $pCellParent = ($pCell !== null) ? $pCell->getWorksheet() : null; |
2997 | 2997 | $wsTitle = ($pCellParent !== null) ? $pCellParent->getTitle() : "\x00Wrk"; |
2998 | - $wsCellReference = $wsTitle . '!' . $cellID; |
|
2998 | + $wsCellReference = $wsTitle.'!'.$cellID; |
|
2999 | 2999 | |
3000 | 3000 | if (($cellID !== null) && ($this->getValueFromCache($wsCellReference, $cellValue))) { |
3001 | 3001 | return $cellValue; |
@@ -3222,9 +3222,9 @@ discard block |
||
3222 | 3222 | } |
3223 | 3223 | } |
3224 | 3224 | |
3225 | - return '{ ' . implode($rpad, $returnMatrix) . ' }'; |
|
3225 | + return '{ '.implode($rpad, $returnMatrix).' }'; |
|
3226 | 3226 | } elseif (is_string($value) && (trim($value, '"') == $value)) { |
3227 | - return '"' . $value . '"'; |
|
3227 | + return '"'.$value.'"'; |
|
3228 | 3228 | } elseif (is_bool($value)) { |
3229 | 3229 | return ($value) ? self::$localeBoolean['TRUE'] : self::$localeBoolean['FALSE']; |
3230 | 3230 | } |
@@ -3262,12 +3262,12 @@ discard block |
||
3262 | 3262 | if ($value == '') { |
3263 | 3263 | return 'an empty string'; |
3264 | 3264 | } elseif ($value[0] == '#') { |
3265 | - return 'a ' . $value . ' error'; |
|
3265 | + return 'a '.$value.' error'; |
|
3266 | 3266 | } |
3267 | 3267 | $typeString = 'a string'; |
3268 | 3268 | } |
3269 | 3269 | |
3270 | - return $typeString . ' with a value of ' . $this->showValue($value); |
|
3270 | + return $typeString.' with a value of '.$this->showValue($value); |
|
3271 | 3271 | } |
3272 | 3272 | } |
3273 | 3273 | |
@@ -3381,13 +3381,13 @@ discard block |
||
3381 | 3381 | // so we store the parent worksheet so that we can re-attach it when necessary |
3382 | 3382 | $pCellParent = ($pCell !== null) ? $pCell->getWorksheet() : null; |
3383 | 3383 | |
3384 | - $regexpMatchString = '/^(' . self::CALCULATION_REGEXP_FUNCTION . |
|
3385 | - '|' . self::CALCULATION_REGEXP_CELLREF . |
|
3386 | - '|' . self::CALCULATION_REGEXP_NUMBER . |
|
3387 | - '|' . self::CALCULATION_REGEXP_STRING . |
|
3388 | - '|' . self::CALCULATION_REGEXP_OPENBRACE . |
|
3389 | - '|' . self::CALCULATION_REGEXP_NAMEDRANGE . |
|
3390 | - '|' . self::CALCULATION_REGEXP_ERROR . |
|
3384 | + $regexpMatchString = '/^('.self::CALCULATION_REGEXP_FUNCTION. |
|
3385 | + '|'.self::CALCULATION_REGEXP_CELLREF. |
|
3386 | + '|'.self::CALCULATION_REGEXP_NUMBER. |
|
3387 | + '|'.self::CALCULATION_REGEXP_STRING. |
|
3388 | + '|'.self::CALCULATION_REGEXP_OPENBRACE. |
|
3389 | + '|'.self::CALCULATION_REGEXP_NAMEDRANGE. |
|
3390 | + '|'.self::CALCULATION_REGEXP_ERROR. |
|
3391 | 3391 | ')/si'; |
3392 | 3392 | |
3393 | 3393 | // Start with initialisation |
@@ -3494,7 +3494,7 @@ discard block |
||
3494 | 3494 | $parenthesisDepthMap[$pendingStoreKey] -= 1; |
3495 | 3495 | } |
3496 | 3496 | |
3497 | - if (is_array($d) && preg_match('/^' . self::CALCULATION_REGEXP_FUNCTION . '$/i', $d['value'], $matches)) { // Did this parenthesis just close a function? |
|
3497 | + if (is_array($d) && preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $d['value'], $matches)) { // Did this parenthesis just close a function? |
|
3498 | 3498 | if (!empty($pendingStoreKey) && $parenthesisDepthMap[$pendingStoreKey] == -1) { |
3499 | 3499 | // we are closing an IF( |
3500 | 3500 | if ($d['value'] != 'IF(') { |
@@ -3530,7 +3530,7 @@ discard block |
||
3530 | 3530 | if ($expectedArgumentCount < 0) { |
3531 | 3531 | if ($argumentCount > abs($expectedArgumentCount)) { |
3532 | 3532 | $argumentCountError = true; |
3533 | - $expectedArgumentCountString = 'no more than ' . abs($expectedArgumentCount); |
|
3533 | + $expectedArgumentCountString = 'no more than '.abs($expectedArgumentCount); |
|
3534 | 3534 | } |
3535 | 3535 | } else { |
3536 | 3536 | if ($argumentCount != $expectedArgumentCount) { |
@@ -3544,28 +3544,28 @@ discard block |
||
3544 | 3544 | case '+': |
3545 | 3545 | if ($argumentCount < $argMatch[1]) { |
3546 | 3546 | $argumentCountError = true; |
3547 | - $expectedArgumentCountString = $argMatch[1] . ' or more '; |
|
3547 | + $expectedArgumentCountString = $argMatch[1].' or more '; |
|
3548 | 3548 | } |
3549 | 3549 | |
3550 | 3550 | break; |
3551 | 3551 | case '-': |
3552 | 3552 | if (($argumentCount < $argMatch[1]) || ($argumentCount > $argMatch[3])) { |
3553 | 3553 | $argumentCountError = true; |
3554 | - $expectedArgumentCountString = 'between ' . $argMatch[1] . ' and ' . $argMatch[3]; |
|
3554 | + $expectedArgumentCountString = 'between '.$argMatch[1].' and '.$argMatch[3]; |
|
3555 | 3555 | } |
3556 | 3556 | |
3557 | 3557 | break; |
3558 | 3558 | case ',': |
3559 | 3559 | if (($argumentCount != $argMatch[1]) && ($argumentCount != $argMatch[3])) { |
3560 | 3560 | $argumentCountError = true; |
3561 | - $expectedArgumentCountString = 'either ' . $argMatch[1] . ' or ' . $argMatch[3]; |
|
3561 | + $expectedArgumentCountString = 'either '.$argMatch[1].' or '.$argMatch[3]; |
|
3562 | 3562 | } |
3563 | 3563 | |
3564 | 3564 | break; |
3565 | 3565 | } |
3566 | 3566 | } |
3567 | 3567 | if ($argumentCountError) { |
3568 | - return $this->raiseFormulaError("Formula Error: Wrong number of arguments for $functionName() function: $argumentCount given, " . $expectedArgumentCountString . ' expected'); |
|
3568 | + return $this->raiseFormulaError("Formula Error: Wrong number of arguments for $functionName() function: $argumentCount given, ".$expectedArgumentCountString.' expected'); |
|
3569 | 3569 | } |
3570 | 3570 | } |
3571 | 3571 | ++$index; |
@@ -3597,7 +3597,7 @@ discard block |
||
3597 | 3597 | } |
3598 | 3598 | // make sure there was a function |
3599 | 3599 | $d = $stack->last(2); |
3600 | - if (!preg_match('/^' . self::CALCULATION_REGEXP_FUNCTION . '$/i', $d['value'], $matches)) { |
|
3600 | + if (!preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $d['value'], $matches)) { |
|
3601 | 3601 | return $this->raiseFormulaError('Formula Error: Unexpected ,'); |
3602 | 3602 | } |
3603 | 3603 | $d = $stack->pop(); |
@@ -3621,7 +3621,7 @@ discard block |
||
3621 | 3621 | $val = $match[1]; |
3622 | 3622 | $length = strlen($val); |
3623 | 3623 | |
3624 | - if (preg_match('/^' . self::CALCULATION_REGEXP_FUNCTION . '$/i', $val, $matches)) { |
|
3624 | + if (preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $val, $matches)) { |
|
3625 | 3625 | $val = preg_replace('/\s/u', '', $val); |
3626 | 3626 | if (isset(self::$phpSpreadsheetFunctions[strtoupper($matches[1])]) || isset(self::$controlFunctions[strtoupper($matches[1])])) { // it's a function |
3627 | 3627 | $valToUpper = strtoupper($val); |
@@ -3642,17 +3642,17 @@ discard block |
||
3642 | 3642 | // tests if the function is closed right after opening |
3643 | 3643 | $ax = preg_match('/^\s*(\s*\))/ui', substr($formula, $index + $length), $amatch); |
3644 | 3644 | if ($ax) { |
3645 | - $stack->push('Operand Count for Function ' . $valToUpper . ')', 0, null, $currentCondition, $currentOnlyIf, $currentOnlyIfNot); |
|
3645 | + $stack->push('Operand Count for Function '.$valToUpper.')', 0, null, $currentCondition, $currentOnlyIf, $currentOnlyIfNot); |
|
3646 | 3646 | $expectingOperator = true; |
3647 | 3647 | } else { |
3648 | - $stack->push('Operand Count for Function ' . $valToUpper . ')', 1, null, $currentCondition, $currentOnlyIf, $currentOnlyIfNot); |
|
3648 | + $stack->push('Operand Count for Function '.$valToUpper.')', 1, null, $currentCondition, $currentOnlyIf, $currentOnlyIfNot); |
|
3649 | 3649 | $expectingOperator = false; |
3650 | 3650 | } |
3651 | 3651 | $stack->push('Brace', '('); |
3652 | 3652 | } else { // it's a var w/ implicit multiplication |
3653 | 3653 | $output[] = ['type' => 'Value', 'value' => $matches[1], 'reference' => null]; |
3654 | 3654 | } |
3655 | - } elseif (preg_match('/^' . self::CALCULATION_REGEXP_CELLREF . '$/i', $val, $matches)) { |
|
3655 | + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'$/i', $val, $matches)) { |
|
3656 | 3656 | // Watch for this case-change when modifying to allow cell references in different worksheets... |
3657 | 3657 | // Should only be applied to the actual cell column, not the worksheet name |
3658 | 3658 | |
@@ -3664,9 +3664,9 @@ discard block |
||
3664 | 3664 | // Otherwise, we 'inherit' the worksheet reference from the start cell reference |
3665 | 3665 | // The start of the cell range reference should be the last entry in $output |
3666 | 3666 | $startCellRef = $output[count($output) - 1]['value']; |
3667 | - preg_match('/^' . self::CALCULATION_REGEXP_CELLREF . '$/i', $startCellRef, $startMatches); |
|
3667 | + preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'$/i', $startCellRef, $startMatches); |
|
3668 | 3668 | if ($startMatches[2] > '') { |
3669 | - $val = $startMatches[2] . '!' . $val; |
|
3669 | + $val = $startMatches[2].'!'.$val; |
|
3670 | 3670 | } |
3671 | 3671 | } else { |
3672 | 3672 | return $this->raiseFormulaError('3D Range references are not yet supported'); |
@@ -3700,14 +3700,14 @@ discard block |
||
3700 | 3700 | ($startRowColRef <= 1048576) && ($val <= 1048576)) { |
3701 | 3701 | // Row range |
3702 | 3702 | $endRowColRef = ($refSheet !== null) ? $refSheet->getHighestColumn() : 'XFD'; // Max 16,384 columns for Excel2007 |
3703 | - $output[count($output) - 1]['value'] = $rangeWS1 . 'A' . $startRowColRef; |
|
3704 | - $val = $rangeWS2 . $endRowColRef . $val; |
|
3703 | + $output[count($output) - 1]['value'] = $rangeWS1.'A'.$startRowColRef; |
|
3704 | + $val = $rangeWS2.$endRowColRef.$val; |
|
3705 | 3705 | } elseif ((ctype_alpha($startRowColRef)) && (ctype_alpha($val)) && |
3706 | 3706 | (strlen($startRowColRef) <= 3) && (strlen($val) <= 3)) { |
3707 | 3707 | // Column range |
3708 | 3708 | $endRowColRef = ($refSheet !== null) ? $refSheet->getHighestRow() : 1048576; // Max 1,048,576 rows for Excel2007 |
3709 | - $output[count($output) - 1]['value'] = $rangeWS1 . strtoupper($startRowColRef) . '1'; |
|
3710 | - $val = $rangeWS2 . $val . $endRowColRef; |
|
3709 | + $output[count($output) - 1]['value'] = $rangeWS1.strtoupper($startRowColRef).'1'; |
|
3710 | + $val = $rangeWS2.$val.$endRowColRef; |
|
3711 | 3711 | } |
3712 | 3712 | } |
3713 | 3713 | |
@@ -3769,7 +3769,7 @@ discard block |
||
3769 | 3769 | } |
3770 | 3770 | // If we're expecting an operator, but only have a space between the previous and next operands (and both are |
3771 | 3771 | // Cell References) then we have an INTERSECTION operator |
3772 | - if (($expectingOperator) && (preg_match('/^' . self::CALCULATION_REGEXP_CELLREF . '.*/Ui', substr($formula, $index), $match)) && |
|
3772 | + if (($expectingOperator) && (preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'.*/Ui', substr($formula, $index), $match)) && |
|
3773 | 3773 | ($output[count($output) - 1]['type'] == 'Cell Reference')) { |
3774 | 3774 | while ($stack->count() > 0 && |
3775 | 3775 | ($o2 = $stack->last()) && |
@@ -3802,7 +3802,7 @@ discard block |
||
3802 | 3802 | $cKeys = array_keys(array_keys($operand[$rowKey])); |
3803 | 3803 | $colKey = array_shift($cKeys); |
3804 | 3804 | if (ctype_upper($colKey)) { |
3805 | - $operandData['reference'] = $colKey . $rowKey; |
|
3805 | + $operandData['reference'] = $colKey.$rowKey; |
|
3806 | 3806 | } |
3807 | 3807 | } |
3808 | 3808 | |
@@ -3859,17 +3859,17 @@ discard block |
||
3859 | 3859 | ) |
3860 | 3860 | ) { |
3861 | 3861 | // If branching value is not true, we don't need to compute |
3862 | - if (!isset($fakedForBranchPruning['onlyIf-' . $onlyIfStoreKey])) { |
|
3863 | - $stack->push('Value', 'Pruned branch (only if ' . $onlyIfStoreKey . ') ' . $token); |
|
3864 | - $fakedForBranchPruning['onlyIf-' . $onlyIfStoreKey] = true; |
|
3862 | + if (!isset($fakedForBranchPruning['onlyIf-'.$onlyIfStoreKey])) { |
|
3863 | + $stack->push('Value', 'Pruned branch (only if '.$onlyIfStoreKey.') '.$token); |
|
3864 | + $fakedForBranchPruning['onlyIf-'.$onlyIfStoreKey] = true; |
|
3865 | 3865 | } |
3866 | 3866 | |
3867 | 3867 | if (isset($storeKey)) { |
3868 | 3868 | // We are processing an if condition |
3869 | 3869 | // We cascade the pruning to the depending branches |
3870 | 3870 | $branchStore[$storeKey] = 'Pruned branch'; |
3871 | - $fakedForBranchPruning['onlyIfNot-' . $storeKey] = true; |
|
3872 | - $fakedForBranchPruning['onlyIf-' . $storeKey] = true; |
|
3871 | + $fakedForBranchPruning['onlyIfNot-'.$storeKey] = true; |
|
3872 | + $fakedForBranchPruning['onlyIf-'.$storeKey] = true; |
|
3873 | 3873 | } |
3874 | 3874 | |
3875 | 3875 | continue; |
@@ -3892,17 +3892,17 @@ discard block |
||
3892 | 3892 | || ($storeValue === 'Pruned branch')) |
3893 | 3893 | ) { |
3894 | 3894 | // If branching value is true, we don't need to compute |
3895 | - if (!isset($fakedForBranchPruning['onlyIfNot-' . $onlyIfNotStoreKey])) { |
|
3896 | - $stack->push('Value', 'Pruned branch (only if not ' . $onlyIfNotStoreKey . ') ' . $token); |
|
3897 | - $fakedForBranchPruning['onlyIfNot-' . $onlyIfNotStoreKey] = true; |
|
3895 | + if (!isset($fakedForBranchPruning['onlyIfNot-'.$onlyIfNotStoreKey])) { |
|
3896 | + $stack->push('Value', 'Pruned branch (only if not '.$onlyIfNotStoreKey.') '.$token); |
|
3897 | + $fakedForBranchPruning['onlyIfNot-'.$onlyIfNotStoreKey] = true; |
|
3898 | 3898 | } |
3899 | 3899 | |
3900 | 3900 | if (isset($storeKey)) { |
3901 | 3901 | // We are processing an if condition |
3902 | 3902 | // We cascade the pruning to the depending branches |
3903 | 3903 | $branchStore[$storeKey] = 'Pruned branch'; |
3904 | - $fakedForBranchPruning['onlyIfNot-' . $storeKey] = true; |
|
3905 | - $fakedForBranchPruning['onlyIf-' . $storeKey] = true; |
|
3904 | + $fakedForBranchPruning['onlyIfNot-'.$storeKey] = true; |
|
3905 | + $fakedForBranchPruning['onlyIf-'.$storeKey] = true; |
|
3906 | 3906 | } |
3907 | 3907 | |
3908 | 3908 | continue; |
@@ -3960,20 +3960,20 @@ discard block |
||
3960 | 3960 | if ($sheet1 == $sheet2) { |
3961 | 3961 | if ($operand1Data['reference'] === null) { |
3962 | 3962 | if ((trim($operand1Data['value']) != '') && (is_numeric($operand1Data['value']))) { |
3963 | - $operand1Data['reference'] = $pCell->getColumn() . $operand1Data['value']; |
|
3963 | + $operand1Data['reference'] = $pCell->getColumn().$operand1Data['value']; |
|
3964 | 3964 | } elseif (trim($operand1Data['reference']) == '') { |
3965 | 3965 | $operand1Data['reference'] = $pCell->getCoordinate(); |
3966 | 3966 | } else { |
3967 | - $operand1Data['reference'] = $operand1Data['value'] . $pCell->getRow(); |
|
3967 | + $operand1Data['reference'] = $operand1Data['value'].$pCell->getRow(); |
|
3968 | 3968 | } |
3969 | 3969 | } |
3970 | 3970 | if ($operand2Data['reference'] === null) { |
3971 | 3971 | if ((trim($operand2Data['value']) != '') && (is_numeric($operand2Data['value']))) { |
3972 | - $operand2Data['reference'] = $pCell->getColumn() . $operand2Data['value']; |
|
3972 | + $operand2Data['reference'] = $pCell->getColumn().$operand2Data['value']; |
|
3973 | 3973 | } elseif (trim($operand2Data['reference']) == '') { |
3974 | 3974 | $operand2Data['reference'] = $pCell->getCoordinate(); |
3975 | 3975 | } else { |
3976 | - $operand2Data['reference'] = $operand2Data['value'] . $pCell->getRow(); |
|
3976 | + $operand2Data['reference'] = $operand2Data['value'].$pCell->getRow(); |
|
3977 | 3977 | } |
3978 | 3978 | } |
3979 | 3979 | |
@@ -3984,7 +3984,7 @@ discard block |
||
3984 | 3984 | $oCol[] = Coordinate::columnIndexFromString($oCR[0]) - 1; |
3985 | 3985 | $oRow[] = $oCR[1]; |
3986 | 3986 | } |
3987 | - $cellRef = Coordinate::stringFromColumnIndex(min($oCol) + 1) . min($oRow) . ':' . Coordinate::stringFromColumnIndex(max($oCol) + 1) . max($oRow); |
|
3987 | + $cellRef = Coordinate::stringFromColumnIndex(min($oCol) + 1).min($oRow).':'.Coordinate::stringFromColumnIndex(max($oCol) + 1).max($oRow); |
|
3988 | 3988 | if ($pCellParent !== null) { |
3989 | 3989 | $cellValue = $this->extractCellRange($cellRef, $this->spreadsheet->getSheetByName($sheet1), false); |
3990 | 3990 | } else { |
@@ -4056,7 +4056,7 @@ discard block |
||
4056 | 4056 | $result = '#VALUE!'; |
4057 | 4057 | } |
4058 | 4058 | } else { |
4059 | - $result = '"' . str_replace('""', '"', self::unwrapResult($operand1) . self::unwrapResult($operand2)) . '"'; |
|
4059 | + $result = '"'.str_replace('""', '"', self::unwrapResult($operand1).self::unwrapResult($operand2)).'"'; |
|
4060 | 4060 | } |
4061 | 4061 | $this->debugLog->writeDebugLog('Evaluation Result is ', $this->showTypeDetails($result)); |
4062 | 4062 | $stack->push('Value', $result); |
@@ -4076,7 +4076,7 @@ discard block |
||
4076 | 4076 | $cellIntersect[$row] = array_intersect_key($operand1[$row], $operand2[$row]); |
4077 | 4077 | } |
4078 | 4078 | } |
4079 | - $cellRef = Coordinate::stringFromColumnIndex(min($oCol) + 1) . min($oRow) . ':' . Coordinate::stringFromColumnIndex(max($oCol) + 1) . max($oRow); |
|
4079 | + $cellRef = Coordinate::stringFromColumnIndex(min($oCol) + 1).min($oRow).':'.Coordinate::stringFromColumnIndex(max($oCol) + 1).max($oRow); |
|
4080 | 4080 | $this->debugLog->writeDebugLog('Evaluation Result is ', $this->showTypeDetails($cellIntersect)); |
4081 | 4081 | $stack->push('Value', $cellIntersect, $cellRef); |
4082 | 4082 | |
@@ -4115,14 +4115,14 @@ discard block |
||
4115 | 4115 | } else { |
4116 | 4116 | $this->executeNumericBinaryOperation($multiplier, $arg, '*', 'arrayTimesEquals', $stack); |
4117 | 4117 | } |
4118 | - } elseif (preg_match('/^' . self::CALCULATION_REGEXP_CELLREF . '$/i', $token, $matches)) { |
|
4118 | + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_CELLREF.'$/i', $token, $matches)) { |
|
4119 | 4119 | $cellRef = null; |
4120 | 4120 | if (isset($matches[8])) { |
4121 | 4121 | if ($pCell === null) { |
4122 | 4122 | // We can't access the range, so return a REF error |
4123 | 4123 | $cellValue = Functions::REF(); |
4124 | 4124 | } else { |
4125 | - $cellRef = $matches[6] . $matches[7] . ':' . $matches[9] . $matches[10]; |
|
4125 | + $cellRef = $matches[6].$matches[7].':'.$matches[9].$matches[10]; |
|
4126 | 4126 | if ($matches[2] > '') { |
4127 | 4127 | $matches[2] = trim($matches[2], "\"'"); |
4128 | 4128 | if ((strpos($matches[2], '[') !== false) || (strpos($matches[2], ']') !== false)) { |
@@ -4152,7 +4152,7 @@ discard block |
||
4152 | 4152 | // We can't access the cell, so return a REF error |
4153 | 4153 | $cellValue = Functions::REF(); |
4154 | 4154 | } else { |
4155 | - $cellRef = $matches[6] . $matches[7]; |
|
4155 | + $cellRef = $matches[6].$matches[7]; |
|
4156 | 4156 | if ($matches[2] > '') { |
4157 | 4157 | $matches[2] = trim($matches[2], "\"'"); |
4158 | 4158 | if ((strpos($matches[2], '[') !== false) || (strpos($matches[2], ']') !== false)) { |
@@ -4190,7 +4190,7 @@ discard block |
||
4190 | 4190 | } |
4191 | 4191 | |
4192 | 4192 | // if the token is a function, pop arguments off the stack, hand them to the function, and push the result back on |
4193 | - } elseif (preg_match('/^' . self::CALCULATION_REGEXP_FUNCTION . '$/i', $token, $matches)) { |
|
4193 | + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_FUNCTION.'$/i', $token, $matches)) { |
|
4194 | 4194 | if ($pCellParent) { |
4195 | 4195 | $pCell->attach($pCellParent); |
4196 | 4196 | } |
@@ -4249,7 +4249,7 @@ discard block |
||
4249 | 4249 | if ($functionName != 'MKMATRIX') { |
4250 | 4250 | if ($this->debugLog->getWriteDebugLog()) { |
4251 | 4251 | krsort($argArrayVals); |
4252 | - $this->debugLog->writeDebugLog('Evaluating ', self::localeFunc($functionName), '( ', implode(self::$localeArgumentSeparator . ' ', Functions::flattenArray($argArrayVals)), ' )'); |
|
4252 | + $this->debugLog->writeDebugLog('Evaluating ', self::localeFunc($functionName), '( ', implode(self::$localeArgumentSeparator.' ', Functions::flattenArray($argArrayVals)), ' )'); |
|
4253 | 4253 | } |
4254 | 4254 | } |
4255 | 4255 | |
@@ -4288,7 +4288,7 @@ discard block |
||
4288 | 4288 | $branchStore[$storeKey] = $token; |
4289 | 4289 | } |
4290 | 4290 | // if the token is a named range, push the named range name onto the stack |
4291 | - } elseif (preg_match('/^' . self::CALCULATION_REGEXP_NAMEDRANGE . '$/i', $token, $matches)) { |
|
4291 | + } elseif (preg_match('/^'.self::CALCULATION_REGEXP_NAMEDRANGE.'$/i', $token, $matches)) { |
|
4292 | 4292 | $namedRange = $matches[6]; |
4293 | 4293 | $this->debugLog->writeDebugLog('Evaluating Named Range ', $namedRange); |
4294 | 4294 | |
@@ -4362,7 +4362,7 @@ discard block |
||
4362 | 4362 | * |
4363 | 4363 | * @return mixed |
4364 | 4364 | */ |
4365 | - private function executeBinaryComparisonOperation($cellID, $operand1, $operand2, $operation, Stack &$stack, $recursingArrays = false) |
|
4365 | + private function executeBinaryComparisonOperation($cellID, $operand1, $operand2, $operation, Stack & $stack, $recursingArrays = false) |
|
4366 | 4366 | { |
4367 | 4367 | // If we're dealing with matrix operations, we want a matrix result |
4368 | 4368 | if ((is_array($operand1)) || (is_array($operand2))) { |
@@ -4630,7 +4630,7 @@ discard block |
||
4630 | 4630 | |
4631 | 4631 | // Extract range |
4632 | 4632 | $aReferences = Coordinate::extractAllCellReferencesInRange($pRange); |
4633 | - $pRange = $pSheetName . '!' . $pRange; |
|
4633 | + $pRange = $pSheetName.'!'.$pRange; |
|
4634 | 4634 | if (!isset($aReferences[1])) { |
4635 | 4635 | $currentCol = ''; |
4636 | 4636 | $currentRow = 0; |
@@ -4689,9 +4689,9 @@ discard block |
||
4689 | 4689 | $splitRange = Coordinate::splitRange($pRange); |
4690 | 4690 | // Convert row and column references |
4691 | 4691 | if (ctype_alpha($splitRange[0][0])) { |
4692 | - $pRange = $splitRange[0][0] . '1:' . $splitRange[0][1] . $namedRange->getWorksheet()->getHighestRow(); |
|
4692 | + $pRange = $splitRange[0][0].'1:'.$splitRange[0][1].$namedRange->getWorksheet()->getHighestRow(); |
|
4693 | 4693 | } elseif (ctype_digit($splitRange[0][0])) { |
4694 | - $pRange = 'A' . $splitRange[0][0] . ':' . $namedRange->getWorksheet()->getHighestColumn() . $splitRange[0][1]; |
|
4694 | + $pRange = 'A'.$splitRange[0][0].':'.$namedRange->getWorksheet()->getHighestColumn().$splitRange[0][1]; |
|
4695 | 4695 | } |
4696 | 4696 | } else { |
4697 | 4697 | return Functions::REF(); |
@@ -4798,7 +4798,7 @@ discard block |
||
4798 | 4798 | |
4799 | 4799 | private function getUnusedBranchStoreKey() |
4800 | 4800 | { |
4801 | - $storeKeyValue = 'storeKey-' . $this->branchStoreKeyCounter; |
|
4801 | + $storeKeyValue = 'storeKey-'.$this->branchStoreKeyCounter; |
|
4802 | 4802 | ++$this->branchStoreKeyCounter; |
4803 | 4803 | |
4804 | 4804 | return $storeKeyValue; |
@@ -4806,7 +4806,7 @@ discard block |
||
4806 | 4806 | |
4807 | 4807 | private function getTokensAsString($tokens) |
4808 | 4808 | { |
4809 | - $tokensStr = array_map(function ($token) { |
|
4809 | + $tokensStr = array_map(function($token) { |
|
4810 | 4810 | $value = $token['value'] ?? 'no value'; |
4811 | 4811 | while (is_array($value)) { |
4812 | 4812 | $value = array_pop($value); |
@@ -4815,6 +4815,6 @@ discard block |
||
4815 | 4815 | return $value; |
4816 | 4816 | }, $tokens); |
4817 | 4817 | |
4818 | - return '[ ' . implode(' | ', $tokensStr) . ' ]'; |
|
4818 | + return '[ '.implode(' | ', $tokensStr).' ]'; |
|
4819 | 4819 | } |
4820 | 4820 | } |
@@ -1102,7 +1102,7 @@ discard block |
||
1102 | 1102 | // Two's Complement |
1103 | 1103 | $x = substr($x, -9); |
1104 | 1104 | |
1105 | - return '-' . (512 - bindec($x)); |
|
1105 | + return '-'.(512 - bindec($x)); |
|
1106 | 1106 | } |
1107 | 1107 | |
1108 | 1108 | return bindec($x); |
@@ -1157,7 +1157,7 @@ discard block |
||
1157 | 1157 | return Functions::NAN(); |
1158 | 1158 | } elseif (strlen($x) == 10) { |
1159 | 1159 | // Two's Complement |
1160 | - return str_repeat('F', 8) . substr(strtoupper(dechex(bindec(substr($x, -9)))), -2); |
|
1160 | + return str_repeat('F', 8).substr(strtoupper(dechex(bindec(substr($x, -9)))), -2); |
|
1161 | 1161 | } |
1162 | 1162 | $hexVal = (string) strtoupper(dechex(bindec($x))); |
1163 | 1163 | |
@@ -1212,7 +1212,7 @@ discard block |
||
1212 | 1212 | return Functions::NAN(); |
1213 | 1213 | } elseif (strlen($x) == 10) { |
1214 | 1214 | // Two's Complement |
1215 | - return str_repeat('7', 7) . substr(strtoupper(decoct(bindec(substr($x, -9)))), -3); |
|
1215 | + return str_repeat('7', 7).substr(strtoupper(decoct(bindec(substr($x, -9)))), -3); |
|
1216 | 1216 | } |
1217 | 1217 | $octVal = (string) decoct(bindec($x)); |
1218 | 1218 | |
@@ -1329,7 +1329,7 @@ discard block |
||
1329 | 1329 | $r = strtoupper(dechex($x)); |
1330 | 1330 | if (strlen($r) == 8) { |
1331 | 1331 | // Two's Complement |
1332 | - $r = 'FF' . $r; |
|
1332 | + $r = 'FF'.$r; |
|
1333 | 1333 | } |
1334 | 1334 | |
1335 | 1335 | return self::nbrConversionFormat($r, $places); |
@@ -32,10 +32,10 @@ |
||
32 | 32 | $eom = self::isLastDayOfMonth($result); |
33 | 33 | |
34 | 34 | while ($settlement < Date::PHPToExcel($result)) { |
35 | - $result->modify('-' . $months . ' months'); |
|
35 | + $result->modify('-'.$months.' months'); |
|
36 | 36 | } |
37 | 37 | if ($next) { |
38 | - $result->modify('+' . $months . ' months'); |
|
38 | + $result->modify('+'.$months.' months'); |
|
39 | 39 | } |
40 | 40 | |
41 | 41 | if ($eom) { |