__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
<?php
namespace PhpOffice\PhpSpreadsheet\Reader;
use PhpOffice\PhpSpreadsheet\Exception as PhpSpreadsheetException;
use PhpOffice\PhpSpreadsheet\Reader\Exception as ReaderException;
use PhpOffice\PhpSpreadsheet\Reader\Security\XmlScanner;
use PhpOffice\PhpSpreadsheet\Shared\File;
use PhpOffice\PhpSpreadsheet\Spreadsheet;
abstract class BaseReader implements IReader
{
/**
* Read data only?
* Identifies whether the Reader should only read data values for cells, and ignore any formatting information;
* or whether it should read both data and formatting.
*
* @var bool
*/
protected $readDataOnly = false;
/**
* Read empty cells?
* Identifies whether the Reader should read data values for cells all cells, or should ignore cells containing
* null value or empty string.
*
* @var bool
*/
protected $readEmptyCells = true;
/**
* Read charts that are defined in the workbook?
* Identifies whether the Reader should read the definitions for any charts that exist in the workbook;.
*
* @var bool
*/
protected $includeCharts = false;
/**
* Restrict which sheets should be loaded?
* This property holds an array of worksheet names to be loaded. If null, then all worksheets will be loaded.
*
* @var null|string[]
*/
protected $loadSheetsOnly;
/**
* IReadFilter instance.
*
* @var IReadFilter
*/
protected $readFilter;
/** @var resource */
protected $fileHandle;
/**
* @var ?XmlScanner
*/
protected $securityScanner;
public function __construct()
{
$this->readFilter = new DefaultReadFilter();
}
public function getReadDataOnly()
{
return $this->readDataOnly;
}
public function setReadDataOnly($readCellValuesOnly)
{
$this->readDataOnly = (bool) $readCellValuesOnly;
return $this;
}
public function getReadEmptyCells()
{
return $this->readEmptyCells;
}
public function setReadEmptyCells($readEmptyCells)
{
$this->readEmptyCells = (bool) $readEmptyCells;
return $this;
}
public function getIncludeCharts()
{
return $this->includeCharts;
}
public function setIncludeCharts($includeCharts)
{
$this->includeCharts = (bool) $includeCharts;
return $this;
}
public function getLoadSheetsOnly()
{
return $this->loadSheetsOnly;
}
public function setLoadSheetsOnly($sheetList)
{
if ($sheetList === null) {
return $this->setLoadAllSheets();
}
$this->loadSheetsOnly = is_array($sheetList) ? $sheetList : [$sheetList];
return $this;
}
public function setLoadAllSheets()
{
$this->loadSheetsOnly = null;
return $this;
}
public function getReadFilter()
{
return $this->readFilter;
}
public function setReadFilter(IReadFilter $readFilter)
{
$this->readFilter = $readFilter;
return $this;
}
public function getSecurityScanner(): ?XmlScanner
{
return $this->securityScanner;
}
public function getSecurityScannerOrThrow(): XmlScanner
{
if ($this->securityScanner === null) {
throw new ReaderException('Security scanner is unexpectedly null');
}
return $this->securityScanner;
}
protected function processFlags(int $flags): void
{
if (((bool) ($flags & self::LOAD_WITH_CHARTS)) === true) {
$this->setIncludeCharts(true);
}
if (((bool) ($flags & self::READ_DATA_ONLY)) === true) {
$this->setReadDataOnly(true);
}
if (((bool) ($flags & self::SKIP_EMPTY_CELLS) || (bool) ($flags & self::IGNORE_EMPTY_CELLS)) === true) {
$this->setReadEmptyCells(false);
}
}
protected function loadSpreadsheetFromFile(string $filename): Spreadsheet
{
throw new PhpSpreadsheetException('Reader classes must implement their own loadSpreadsheetFromFile() method');
}
/**
* Loads Spreadsheet from file.
*
* @param int $flags the optional second parameter flags may be used to identify specific elements
* that should be loaded, but which won't be loaded by default, using these values:
* IReader::LOAD_WITH_CHARTS - Include any charts that are defined in the loaded file
*/
public function load(string $filename, int $flags = 0): Spreadsheet
{
$this->processFlags($flags);
try {
return $this->loadSpreadsheetFromFile($filename);
} catch (ReaderException $e) {
throw $e;
}
}
/**
* Open file for reading.
*/
protected function openFile(string $filename): void
{
$fileHandle = false;
if ($filename) {
File::assertFile($filename);
// Open file
$fileHandle = fopen($filename, 'rb');
}
if ($fileHandle === false) {
throw new ReaderException('Could not open file ' . $filename . ' for reading.');
}
$this->fileHandle = $fileHandle;
}
}
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| Csv | Folder | 0777 |
|
|
| Gnumeric | Folder | 0777 |
|
|
| Ods | Folder | 0777 |
|
|
| Security | Folder | 0777 |
|
|
| Xlsx | Folder | 0777 |
|
|
| Xml | Folder | 0777 |
|
|
| BaseReader.php | File | 5.17 KB | 0777 |
|
| Csv.php | File | 18.76 KB | 0777 |
|
| DefaultReadFilter.php | File | 473 B | 0777 |
|
| Exception.php | File | 171 B | 0777 |
|
| Gnumeric.php | File | 21.79 KB | 0777 |
|
| Html.php | File | 40.03 KB | 0777 |
|
| IReadFilter.php | File | 416 B | 0777 |
|
| IReader.php | File | 4.59 KB | 0777 |
|
| Ods.php | File | 35.61 KB | 0777 |
|
| Slk.php | File | 19.63 KB | 0777 |
|
| Xlsx.php | File | 129.92 KB | 0777 |
|
| Xml.php | File | 26.03 KB | 0777 |
|