PHP Класс Box\Spout\Reader\ODS\RowIterator

Наследование: implements Box\Spout\Reader\IteratorInterface
Показать файл Открыть проект

Защищенные свойства (Protected)

Свойство Тип Описание
$cellValueFormatter Helper to format cell values
$currentlyProcessedRowData Contains the data for the currently processed row (key = cell index, value = cell value)
$hasAlreadyBeenRewound Whether the iterator has already been rewound once
$hasAlreadyReadOneCellInCurrentRow Whether at least one cell has been read for the row currently being processed
$hasReachedEndOfFile Indicates whether all rows have been read
$lastProcessedCellValue Value of the last processed cell (because when reading cell at column N+1, cell N is processed)
$lastRowIndexProcessed Last row index processed (one-based)
$nextRowIndexToBeProcessed Row index to be processed next (one-based)
$numColumnsRepeated Number of times the last cell value should be copied to the cells on its right
$numRowsRepeated Number of times the last processed row should be repeated
$rowDataBuffer Buffer used to store the row data, while checking if there are more rows to read
$shouldPreserveEmptyRows Whether empty rows should be returned or skipped
$xmlProcessor Helper Object to process XML nodes
$xmlReader The XMLReader object that will help read sheet's XML data

Открытые методы

Метод Описание
__construct ( Box\Spout\Reader\Wrapper\XMLReader $xmlReader, Box\Spout\Reader\ODS\ReaderOptions $options )
current ( ) : array | null Return the current element, from the buffer.
end ( ) : void Cleans up what was created to iterate over the object.
key ( ) : integer Return the key of the current element
next ( ) : void Move forward to next element. Empty rows will be skipped.
rewind ( ) : void Rewind the Iterator to the first element.
valid ( ) : boolean Checks if current position is valid

Защищенные методы

Метод Описание
doesNeedDataForNextRowToBeProcessed ( ) : boolean Returns whether we need data for the next row to be processed.
getCellValue ( DOMNode $node ) : string | integer | float | boolean | DateTime | DateInterval | null Returns the (unescaped) correctly marshalled, cell value associated to the given XML node.
getNumColumnsRepeatedForCurrentNode ( Box\Spout\Reader\Wrapper\XMLReader $xmlReader ) : integer
getNumRowsRepeatedForCurrentNode ( Box\Spout\Reader\Wrapper\XMLReader $xmlReader ) : integer
isEmptyRow ( array $rowData, $lastReadCellValue ) : boolean After finishing processing each cell, a row is considered empty if it contains no cells or if the value of the last read cell is an empty string.
processCellStartingNode ( Box\Spout\Reader\Wrapper\XMLReader $xmlReader ) : integer
processRowEndingNode ( ) : integer
processRowStartingNode ( Box\Spout\Reader\Wrapper\XMLReader $xmlReader ) : integer
processTableEndingNode ( ) : integer
readDataForNextRow ( ) : void

Описание методов

__construct() публичный Метод

public __construct ( Box\Spout\Reader\Wrapper\XMLReader $xmlReader, Box\Spout\Reader\ODS\ReaderOptions $options )
$xmlReader Box\Spout\Reader\Wrapper\XMLReader XML Reader, positioned on the "" element
$options Box\Spout\Reader\ODS\ReaderOptions Reader's current options

current() публичный Метод

Return the current element, from the buffer.
public current ( ) : array | null
Результат array | null

doesNeedDataForNextRowToBeProcessed() защищенный Метод

We DO need to read data if: - we have not read any rows yet OR - the next row to be processed immediately follows the last read row
protected doesNeedDataForNextRowToBeProcessed ( ) : boolean
Результат boolean Whether we need data for the next row to be processed.

end() публичный Метод

Cleans up what was created to iterate over the object.
public end ( ) : void
Результат void

getCellValue() защищенный Метод

Returns the (unescaped) correctly marshalled, cell value associated to the given XML node.
protected getCellValue ( DOMNode $node ) : string | integer | float | boolean | DateTime | DateInterval | null
$node DOMNode
Результат string | integer | float | boolean | DateTime | DateInterval | null The value associated with the cell, empty string if cell's type is void/undefined, null on error

getNumColumnsRepeatedForCurrentNode() защищенный Метод

protected getNumColumnsRepeatedForCurrentNode ( Box\Spout\Reader\Wrapper\XMLReader $xmlReader ) : integer
$xmlReader Box\Spout\Reader\Wrapper\XMLReader XMLReader object, positioned on a "" starting node
Результат integer The value of "table:number-columns-repeated" attribute of the current node, or 1 if attribute missing

getNumRowsRepeatedForCurrentNode() защищенный Метод

protected getNumRowsRepeatedForCurrentNode ( Box\Spout\Reader\Wrapper\XMLReader $xmlReader ) : integer
$xmlReader Box\Spout\Reader\Wrapper\XMLReader XMLReader object, positioned on a "" starting node
Результат integer The value of "table:number-rows-repeated" attribute of the current node, or 1 if attribute missing

isEmptyRow() защищенный Метод

After finishing processing each cell, the last read cell is not part of the row data yet (as we still need to apply the "num-columns-repeated" attribute).
protected isEmptyRow ( array $rowData, $lastReadCellValue ) : boolean
$rowData array
Результат boolean Whether the row is empty

key() публичный Метод

Return the key of the current element
public key ( ) : integer
Результат integer

next() публичный Метод

Move forward to next element. Empty rows will be skipped.
public next ( ) : void
Результат void

processCellStartingNode() защищенный Метод

protected processCellStartingNode ( Box\Spout\Reader\Wrapper\XMLReader $xmlReader ) : integer
$xmlReader Box\Spout\Reader\Wrapper\XMLReader XMLReader object, positioned on a "" starting node
Результат integer A return code that indicates what action should the processor take next

processRowEndingNode() защищенный Метод

protected processRowEndingNode ( ) : integer
Результат integer A return code that indicates what action should the processor take next

processRowStartingNode() защищенный Метод

protected processRowStartingNode ( Box\Spout\Reader\Wrapper\XMLReader $xmlReader ) : integer
$xmlReader Box\Spout\Reader\Wrapper\XMLReader XMLReader object, positioned on a "" starting node
Результат integer A return code that indicates what action should the processor take next

processTableEndingNode() защищенный Метод

protected processTableEndingNode ( ) : integer
Результат integer A return code that indicates what action should the processor take next

readDataForNextRow() защищенный Метод

protected readDataForNextRow ( ) : void
Результат void

rewind() публичный Метод

NOTE: It can only be done once, as it is not possible to read an XML file backwards.
public rewind ( ) : void
Результат void

valid() публичный Метод

Checks if current position is valid
public valid ( ) : boolean
Результат boolean

Описание свойств

$cellValueFormatter защищенное свойство

Helper to format cell values
protected $cellValueFormatter

$currentlyProcessedRowData защищенное свойство

Contains the data for the currently processed row (key = cell index, value = cell value)
protected $currentlyProcessedRowData

$hasAlreadyBeenRewound защищенное свойство

Whether the iterator has already been rewound once
protected $hasAlreadyBeenRewound

$hasAlreadyReadOneCellInCurrentRow защищенное свойство

Whether at least one cell has been read for the row currently being processed
protected $hasAlreadyReadOneCellInCurrentRow

$hasReachedEndOfFile защищенное свойство

Indicates whether all rows have been read
protected $hasReachedEndOfFile

$lastProcessedCellValue защищенное свойство

Value of the last processed cell (because when reading cell at column N+1, cell N is processed)
protected $lastProcessedCellValue

$lastRowIndexProcessed защищенное свойство

Last row index processed (one-based)
protected $lastRowIndexProcessed

$nextRowIndexToBeProcessed защищенное свойство

Row index to be processed next (one-based)
protected $nextRowIndexToBeProcessed

$numColumnsRepeated защищенное свойство

Number of times the last cell value should be copied to the cells on its right
protected $numColumnsRepeated

$numRowsRepeated защищенное свойство

Number of times the last processed row should be repeated
protected $numRowsRepeated

$rowDataBuffer защищенное свойство

Buffer used to store the row data, while checking if there are more rows to read
protected $rowDataBuffer

$shouldPreserveEmptyRows защищенное свойство

Whether empty rows should be returned or skipped
protected $shouldPreserveEmptyRows

$xmlProcessor защищенное свойство

Helper Object to process XML nodes
protected $xmlProcessor

$xmlReader защищенное свойство

The XMLReader object that will help read sheet's XML data
protected $xmlReader