2012-12-13 19 views
31

SetCellValue('cell_name', 'value')'u kullandığım bir döngü yazmam gerektiğini anlıyorum; Ancak, PHPExcel'de tek bir diziyi kabul eden ve bunu bir Excel sayfası satırına yazan bir yöntem var mı?PHPExcel'de bir PHP dizisini doğrudan bir satıra yazmak için bir yöntem var mı?

şey gibi:

 
$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 

ben dahil belgelerinde böyle bir şeyi bulamadık, ama bu sadece kötü bir PDF arama becerileri olabilir ...

cevap

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

Bir dizi kullanılır API dokümanlar tarif edildiği gibi örnek

değişkenleri arasında

/** 
* 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

Teşekkür ederim, mükemmel çalışıyor. Ayrıca PHPExcel için teşekkürler, ne büyük ve yararlı bir çaba. Bir soru daha var: Bu 2B dizilerini destekliyor mu (bu muhtemelen çok fazla soruyor!)? Dizi öğelerinden birinin içine bir dizi yerleştirmeyi denedim ve "foreach" hatası için geçersiz bir argüman aldım. İhtiyacım olan başka argümanlar, belki (umarım! :))? –

+8

2d dizilerini destekler: 1d dizisi tek bir satır olarak ele alınır, 2-d dizisi bir hücre aralığı olarak kabul edilir; ama düzenli diziler olmalılar (yani her satırda aynı sayıda sütun). 33chartcreate ve 10autofilter seçim örneklerinin tümü 2d dizilerini kullanır. –

İlgili konular