phpexcel动态添加列

时间:2015-01-05 17:31:41

标签: php phpexcel

$mysqli = new mysqli("localhost", "root", "", "wolly");
if ($mysqli->connect_errno) {
    printf("Connect failed: %s\n", $mysqli->connect_error);
    exit();
}
$query = "SELECT * FROM action";
if ($result = $mysqli->query($query)) 
{
    while ($row = $result->fetch_assoc()) 
{
$objPHPExcel->getActiveSheet()->setCellValue('A1', $row["ActionId"]); 
$objPHPExcel->getActiveSheet()->setCellValue('B1', $row["ActionName"]); 
}
$result->free();
}
$mysqli->close();

通过上述查询,它将仅在A1,B1(表格的最后一个数据)中打印。但是我怎样才能让它充满活力。所以在foreach循环中它应该打印

A1|B1
1 |Ram
2 |Raj
3 |Adam

然而,A1,B1,A2,B2 ......应该在foreach循环内动态生成。我怎么能这样做。

我的意思是我应该在下面的代码中用A1,B1代替它来动态添加它

$objPHPExcel->getActiveSheet()->setCellValue('A1', $row["ActionId"]); 
$objPHPExcel->getActiveSheet()->setCellValue('B1', $row["ActionName"]); 

1 个答案:

答案 0 :(得分:0)

简单的PHP字符串连接,带有一个简单的PHP递增数字,为您提供一个每行递增的单元格地址:

$rowNumber = 1;
while ($row = $result->fetch_assoc()) 
{
    $objPHPExcel->getActiveSheet()
        ->setCellValue('A' . $rowNumber, $row["ActionId"])
        ->setCellValue('B' . $rowNumber, $row["ActionName"]); 
    $rowNumber++;
}