PHPExcel - colspan 主题名称

标签 php phpexcel

  • 表名:主题
    enter image description here

  • 我的预期输出
    enter image description here

  • 我的代码

    <?php
        //dbconnection
    
        $q = "SELECT name FROM subject";
        $r = mysqli_query($dbc, $q);
    
        while($row = mysqli_fetch_array($r, MYSQLI_ASSOC))
        {
            $name[] = $row['name'];
        }
    
        $objPHPExcel = new PHPExcel();
        $objPHPExcel->setActiveSheetIndex(0);
    
        $headers = array('School Name');
        $objPHPExcel->getActiveSheet()->fromArray($headers, null, 'A1');
        $objPHPExcel->getActiveSheet()->fromArray($name, null, 'B1');
    
        $objPHPExcel->getActiveSheet()->mergeCells('B1:C1');
        $objPHPExcel->getActiveSheet()->mergeCells('D1:E1');
        $objPHPExcel->getActiveSheet()->mergeCells('F1:G1');
        $objPHPExcel->getActiveSheet()->mergeCells('H1:I1');
    ?>
    
  • 我想为每个主题设置 colspan = 2。我不想写 4 行单独的代码。我尝试使用 for 循环,如下所示:

    $objWorksheet = $objPHPExcel->getActiveSheet();
    
    $row = 1;
    $highestColumn = $objWorksheet -> getHighestColumn();
    $highestColumn++;
    
    for($column = 'A'; $column != $highestColumn; $column++)
    {
        if($column <= 'C')
        {
            //[HERE]
        }
    }
    
  • 在我写完 for 循环后,我卡住了。我不知道如何控制列名和设置 colspan。有人可以帮助我吗?

最佳答案

在主题列表的循环中执行此操作可能容易得多:

$objPHPExcel = new PHPExcel();
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->setCellValue('A1', 'School Name');
$objPHPExcel->getActiveSheet()->mergeCells('A1:A2');

$column = 'B';
while($row = mysqli_fetch_array($r, MYSQLI_ASSOC))
{
    $objPHPExcel->getActiveSheet()->setCellValue($column.'1', $row['name']);
    $mergeRange = $column.'1:';
    $objPHPExcel->getActiveSheet()->setCellValue($column.'2', 'Student Name');
    $column++;
    $mergeRange .= $column.'1';
    $objPHPExcel->getActiveSheet()->setCellValue($column.'2', 'Grade');
    $objPHPExcel->getActiveSheet()->mergeCells($mergeRange);
    $column++;
}

关于PHPExcel - colspan 主题名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32633937/

相关文章:

PHPExcel 单元格保护

php - MySQL DATE 类型的每月类别

PHP_OS - 它是否包含构建或运行的操作系统?

javascript - 在 EXT js 中对渲染/转换值进行排序

php - 如何获取多个查询的连接数?

php - 将数字转换为字符串

PHPExcel:自动下载并打开 Excel 文件

PHPExcel 如何只获取 1 个单元格值?

php排序对象的属性

background - PHPExcel白色背景