123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- <?php
- /**
- * Wrap an OpenDocument spreadsheet row
- *
- * Requires PHP 5.0.3
- *
- * @version $Id: Calc_Row.php,v 1.1 2005-02-27 10:58:44 marand Exp $
- * @license CeCILL 2.0
- * @copyright 2005 Ouest Systemes Informatiques
- */
- $erCalc_Row = error_reporting(E_ALL | E_STRICT);
- class Calc_Row
- {
- /**
- * @var DOMElement $row
- */
- protected $row;
-
- /**
- * Analyze a spreadsheet row and return the cells as an array of Calc_Cell
- *
- * @return array
- */
- function getCells ()
- {
- $cellNodeList = $this->row->childNodes;
- $cells = array();
- $iCell = 0;
- for ($icol = 0 ; $icol < $cellNodeList->length ; $icol++)
- {
- $cellElement = $cellNodeList->item($icol);
- $count = NULL;
- if (is_object($cellElement))
- {
- $count = $cellElement->getAttributeNS(Calc_Reader::NS_TABLE, 'number-columns-repeated');
- }
- if (empty($count))
- {
- $count = 1;
- }
- for ($j = 0 ; $j < $count ; $j++)
- {
- $cells[$iprop++] = new Calc_Cell($cellElement);
- }
- }
-
- return $cells;
- }
-
- /**
- * Construct a Calc_Row from the DOMElement representing it.
- *
- * This DOMElement must bear a table:table-row tag
- *
- * @param DOMNodeList $row
- * @return void
- */
- function __construct(DOMElement $row)
- {
- if ((!is_a($row, 'DOMElement')) || ($row->tagName != 'table:table-row'))
- {
- die('Calc_Row::__construct() needs a DOMElement parameter for a table-row element ');
- }
- $this->row = $row;
- }
- }
-
- error_reporting($erCalc_Row);
- unset($erCalc_Row);
|