80 lines
2.1 KiB
PHP
80 lines
2.1 KiB
PHP
<?php
|
|
|
|
namespace Box\Spout\Reader\XLSX;
|
|
|
|
use Box\Spout\Reader\SheetInterface;
|
|
|
|
/**
|
|
* Class Sheet
|
|
* Represents a sheet within a XLSX file
|
|
*
|
|
* @package Box\Spout\Reader\XLSX
|
|
*/
|
|
class Sheet implements SheetInterface
|
|
{
|
|
/** @var \Box\Spout\Reader\XLSX\RowIterator To iterate over sheet's rows */
|
|
protected $rowIterator;
|
|
|
|
/** @var int Index of the sheet, based on order in the workbook (zero-based) */
|
|
protected $index;
|
|
|
|
/** @var string Name of the sheet */
|
|
protected $name;
|
|
|
|
/** @var bool Whether the sheet was the active one */
|
|
protected $isActive;
|
|
|
|
/**
|
|
* @param string $filePath Path of the XLSX file being read
|
|
* @param string $sheetDataXMLFilePath Path of the sheet data XML file as in [Content_Types].xml
|
|
* @param int $sheetIndex Index of the sheet, based on order in the workbook (zero-based)
|
|
* @param string $sheetName Name of the sheet
|
|
* @param bool $isSheetActive Whether the sheet was defined as active
|
|
* @param \Box\Spout\Reader\XLSX\ReaderOptions $options Reader's current options
|
|
* @param Helper\SharedStringsHelper Helper to work with shared strings
|
|
*/
|
|
public function __construct($filePath, $sheetDataXMLFilePath, $sheetIndex, $sheetName, $isSheetActive, $options, $sharedStringsHelper)
|
|
{
|
|
$this->rowIterator = new RowIterator($filePath, $sheetDataXMLFilePath, $options, $sharedStringsHelper);
|
|
$this->index = $sheetIndex;
|
|
$this->name = $sheetName;
|
|
$this->isActive = $isSheetActive;
|
|
}
|
|
|
|
/**
|
|
* @api
|
|
* @return \Box\Spout\Reader\XLSX\RowIterator
|
|
*/
|
|
public function getRowIterator()
|
|
{
|
|
return $this->rowIterator;
|
|
}
|
|
|
|
/**
|
|
* @api
|
|
* @return int Index of the sheet, based on order in the workbook (zero-based)
|
|
*/
|
|
public function getIndex()
|
|
{
|
|
return $this->index;
|
|
}
|
|
|
|
/**
|
|
* @api
|
|
* @return string Name of the sheet
|
|
*/
|
|
public function getName()
|
|
{
|
|
return $this->name;
|
|
}
|
|
|
|
/**
|
|
* @api
|
|
* @return bool Whether the sheet was defined as active
|
|
*/
|
|
public function isActive()
|
|
{
|
|
return $this->isActive;
|
|
}
|
|
}
|