!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/var/www/html/main_file/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/Xlsx/   drwxr-xr-x
Free 13.08 GB of 57.97 GB (22.56%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     Workbook.php (7.8 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace PhpOffice\PhpSpreadsheet\Writer\Xlsx;

use 
PhpOffice\PhpSpreadsheet\Reader\Xlsx\Namespaces;
use 
PhpOffice\PhpSpreadsheet\Shared\Date;
use 
PhpOffice\PhpSpreadsheet\Shared\XMLWriter;
use 
PhpOffice\PhpSpreadsheet\Spreadsheet;
use 
PhpOffice\PhpSpreadsheet\Writer\Exception as WriterException;
use 
PhpOffice\PhpSpreadsheet\Writer\Xlsx\DefinedNames as DefinedNamesWriter;

class 
Workbook extends WriterPart
{
    
/**
     * Write workbook to XML format.
     *
     * @param bool $recalcRequired Indicate whether formulas should be recalculated before writing
     *
     * @return string XML Output
     */
    
public function writeWorkbook(Spreadsheet $spreadsheet$recalcRequired false)
    {
        
// Create XML writer
        
if ($this->getParentWriter()->getUseDiskCaching()) {
            
$objWriter = new XMLWriter(XMLWriter::STORAGE_DISK$this->getParentWriter()->getDiskCachingDirectory());
        } else {
            
$objWriter = new XMLWriter(XMLWriter::STORAGE_MEMORY);
        }

        
// XML header
        
$objWriter->startDocument('1.0''UTF-8''yes');

        
// workbook
        
$objWriter->startElement('workbook');
        
$objWriter->writeAttribute('xml:space''preserve');
        
$objWriter->writeAttribute('xmlns'Namespaces::MAIN);
        
$objWriter->writeAttribute('xmlns:r'Namespaces::SCHEMA_OFFICE_DOCUMENT);

        
// fileVersion
        
$this->writeFileVersion($objWriter);

        
// workbookPr
        
$this->writeWorkbookPr($objWriter);

        
// workbookProtection
        
$this->writeWorkbookProtection($objWriter$spreadsheet);

        
// bookViews
        
if ($this->getParentWriter()->getOffice2003Compatibility() === false) {
            
$this->writeBookViews($objWriter$spreadsheet);
        }

        
// sheets
        
$this->writeSheets($objWriter$spreadsheet);

        
// definedNames
        
(new DefinedNamesWriter($objWriter$spreadsheet))->write();

        
// calcPr
        
$this->writeCalcPr($objWriter$recalcRequired);

        
$objWriter->endElement();

        
// Return
        
return $objWriter->getData();
    }

    
/**
     * Write file version.
     */
    
private function writeFileVersion(XMLWriter $objWriter): void
    
{
        
$objWriter->startElement('fileVersion');
        
$objWriter->writeAttribute('appName''xl');
        
$objWriter->writeAttribute('lastEdited''4');
        
$objWriter->writeAttribute('lowestEdited''4');
        
$objWriter->writeAttribute('rupBuild''4505');
        
$objWriter->endElement();
    }

    
/**
     * Write WorkbookPr.
     */
    
private function writeWorkbookPr(XMLWriter $objWriter): void
    
{
        
$objWriter->startElement('workbookPr');

        if (
Date::getExcelCalendar() === Date::CALENDAR_MAC_1904) {
            
$objWriter->writeAttribute('date1904''1');
        }

        
$objWriter->writeAttribute('codeName''ThisWorkbook');

        
$objWriter->endElement();
    }

    
/**
     * Write BookViews.
     */
    
private function writeBookViews(XMLWriter $objWriterSpreadsheet $spreadsheet): void
    
{
        
// bookViews
        
$objWriter->startElement('bookViews');

        
// workbookView
        
$objWriter->startElement('workbookView');

        
$objWriter->writeAttribute('activeTab', (string) $spreadsheet->getActiveSheetIndex());
        
$objWriter->writeAttribute('autoFilterDateGrouping', ($spreadsheet->getAutoFilterDateGrouping() ? 'true' 'false'));
        
$objWriter->writeAttribute('firstSheet', (string) $spreadsheet->getFirstSheetIndex());
        
$objWriter->writeAttribute('minimized', ($spreadsheet->getMinimized() ? 'true' 'false'));
        
$objWriter->writeAttribute('showHorizontalScroll', ($spreadsheet->getShowHorizontalScroll() ? 'true' 'false'));
        
$objWriter->writeAttribute('showSheetTabs', ($spreadsheet->getShowSheetTabs() ? 'true' 'false'));
        
$objWriter->writeAttribute('showVerticalScroll', ($spreadsheet->getShowVerticalScroll() ? 'true' 'false'));
        
$objWriter->writeAttribute('tabRatio', (string) $spreadsheet->getTabRatio());
        
$objWriter->writeAttribute('visibility'$spreadsheet->getVisibility());

        
$objWriter->endElement();

        
$objWriter->endElement();
    }

    
/**
     * Write WorkbookProtection.
     */
    
private function writeWorkbookProtection(XMLWriter $objWriterSpreadsheet $spreadsheet): void
    
{
        if (
$spreadsheet->getSecurity()->isSecurityEnabled()) {
            
$objWriter->startElement('workbookProtection');
            
$objWriter->writeAttribute('lockRevision', ($spreadsheet->getSecurity()->getLockRevision() ? 'true' 'false'));
            
$objWriter->writeAttribute('lockStructure', ($spreadsheet->getSecurity()->getLockStructure() ? 'true' 'false'));
            
$objWriter->writeAttribute('lockWindows', ($spreadsheet->getSecurity()->getLockWindows() ? 'true' 'false'));

            if (
$spreadsheet->getSecurity()->getRevisionsPassword() != '') {
                
$objWriter->writeAttribute('revisionsPassword'$spreadsheet->getSecurity()->getRevisionsPassword());
            }

            if (
$spreadsheet->getSecurity()->getWorkbookPassword() != '') {
                
$objWriter->writeAttribute('workbookPassword'$spreadsheet->getSecurity()->getWorkbookPassword());
            }

            
$objWriter->endElement();
        }
    }

    
/**
     * Write calcPr.
     *
     * @param bool $recalcRequired Indicate whether formulas should be recalculated before writing
     */
    
private function writeCalcPr(XMLWriter $objWriter$recalcRequired true): void
    
{
        
$objWriter->startElement('calcPr');

        
//    Set the calcid to a higher value than Excel itself will use, otherwise Excel will always recalc
        //  If MS Excel does do a recalc, then users opening a file in MS Excel will be prompted to save on exit
        //     because the file has changed
        
$objWriter->writeAttribute('calcId''999999');
        
$objWriter->writeAttribute('calcMode''auto');
        
//    fullCalcOnLoad isn't needed if we've recalculating for the save
        
$objWriter->writeAttribute('calcCompleted', ($recalcRequired) ? '1' '0');
        
$objWriter->writeAttribute('fullCalcOnLoad', ($recalcRequired) ? '0' '1');
        
$objWriter->writeAttribute('forceFullCalc', ($recalcRequired) ? '0' '1');

        
$objWriter->endElement();
    }

    
/**
     * Write sheets.
     */
    
private function writeSheets(XMLWriter $objWriterSpreadsheet $spreadsheet): void
    
{
        
// Write sheets
        
$objWriter->startElement('sheets');
        
$sheetCount $spreadsheet->getSheetCount();
        for (
$i 0$i $sheetCount; ++$i) {
            
// sheet
            
$this->writeSheet(
                
$objWriter,
                
$spreadsheet->getSheet($i)->getTitle(),
                (
$i 1),
                (
$i 3),
                
$spreadsheet->getSheet($i)->getSheetState()
            );
        }

        
$objWriter->endElement();
    }

    
/**
     * Write sheet.
     *
     * @param string $worksheetName Sheet name
     * @param int $worksheetId Sheet id
     * @param int $relId Relationship ID
     * @param string $sheetState Sheet state (visible, hidden, veryHidden)
     */
    
private function writeSheet(XMLWriter $objWriter$worksheetName$worksheetId 1$relId 1$sheetState 'visible'): void
    
{
        if (
$worksheetName != '') {
            
// Write sheet
            
$objWriter->startElement('sheet');
            
$objWriter->writeAttribute('name'$worksheetName);
            
$objWriter->writeAttribute('sheetId', (string) $worksheetId);
            if (
$sheetState !== 'visible' && $sheetState != '') {
                
$objWriter->writeAttribute('state'$sheetState);
            }
            
$objWriter->writeAttribute('r:id''rId' $relId);
            
$objWriter->endElement();
        } else {
            throw new 
WriterException('Invalid parameters passed.');
        }
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0068 ]--