2012-12-13 11 views
31

Ich verstehe, dass ich eine Schleife schreiben muss, in der ich SetCellValue('cell_name', 'value') verwenden; Gibt es in PHPExcel eine Methode, die nur ein einzelnes Array akzeptiert und in eine Excel-Tabellenzeile schreibt?Gibt es in PHPExcel eine Methode, um ein PHP-Array direkt in eine Zeile zu schreiben?

Etwas wie:

 
$testArray = array('testcelltext1', 'testcelltext2', testcelltext3'); 
PHPExcel::writeArraytoRow($testArray); 
//do the other PHPExcel stuff to actually write the file 
. 
. 
. 
// outputs an excel file in which the PHP array was written to the first row 

ich so etwas nicht in der mitgelieferten Dokumentation finden konnte, aber das könnte nur Fähigkeiten Suche schlecht PDF sein ...

Antwort

65
$objPHPExcel->getActiveSheet()->fromArray($testArray, NULL, 'A1'); 

Es in einer Reihe verwendet werden der Beispiele

Argumente, wie in der API-Dokumentation beschrieben

/** 
* Fill worksheet from values in array 
* 
* @param array $source     Source array 
* @param mixed $nullValue    Value in source array that stands for blank cell 
* @param string $startCell    Insert array starting from this cell address as the top left coordinate 
* @param boolean $strictNullComparison Apply strict comparison when testing for null values in the array 
* @throws Exception 
* @return PHPExcel_Worksheet 
*/ 
+0

Danke, funktioniert perfekt. Danke auch für PHPExcel, was für ein großartiger und nützlicher Aufwand. Noch eine Frage: Unterstützt das 2D-Arrays (das verlangt wahrscheinlich zu viel!)? Ich habe versucht, ein Array in einem der Array-Elemente zu verschachteln, und ich habe ein "ungültiges Argument für foreach" -Fehler. Irgendwelche anderen Argumente, die ich weitergeben muss, vielleicht (hoffentlich! :))? –

+8

Es unterstützt 2d-Arrays: Ein 1d-Array wird als eine einzelne Zeile behandelt, ein 2-d-Array wird als ein Bereich von Zellen behandelt; aber sie müssen reguläre Arrays sein (d. h. die gleiche Anzahl von Spalten in jeder Zeile) ... Die Beispiele für die Erstellung von Tabellen und 10 Autofilter-Selektionen verwenden alle 2D-Arrays –

Verwandte Themen