2013-08-13 15 views
9

Sto utilizzando PHPExcel per leggere alcuni dati da un file xls.Come posso ottenere un intervallo di celle in PHPExcel?

Voglio ottenere un paio di celle contemporaneamente, ad esempio: A6 - A11.

So che posso usare $cell = $objPHPExcel->setActiveSheetIndex(0)->getCell('A6'); per ottenere una singola cella, e probabilmente potrei scorrere un array e ottenere ogni cella nel mio intervallo.

Ma, non esiste un metodo più semplice per ottenere un intervallo di celle come getCellRange('A6:A11')?

risposta

21

C'è, il metodo rangeToArray():

$objPHPExcel->setActiveSheetIndex(0)->rangeToArray('A1:C3'); 

chiedendo perché preoccuparsi di documentare questi metodi, in primo luogo, ma ecco la lista degli argomenti così:

/** 
* Create array from a range of cells 
* 
* @param string $pRange    Range of cells (i.e. "A1:B10"), 
*            or just one cell (i.e. "A1") 
* @param mixed  $nullValue   Value returned in the array entry 
*            if a cell doesn't exist 
* @param boolean $calculateFormulas Should formulas be calculated? 
* @param boolean $formatData   Should formatting be applied to cell values? 
* @param boolean $returnCellRef  False - Return a simple array of rows 
*            and columns indexed by number counting 
*            from zero 
*           True - Return rows and columns indexed by 
*            their actual row and column IDs 
* @return array 
*/ 
+2

in realtà ho trovato questo metodo in l'API circa 30 minuti dopo che ho postato questa domanda. Ma non è stato facile da trovare :) Ancora, questo è ciò che SO è tutto. Grazie! – hitautodestruct

+1

Mi scuso che i documenti API di PHP-Documentor sono così difficili da usare; Mi assicurerò di rimproverare Mike van Riel la prossima volta che lo vedo, –

+0

LOL, manca solo una funzionalità di ricerca decente .. Perché non è online da qualche parte? – hitautodestruct

Problemi correlati