PHPExcel-colspan主题名称
表名:主题PHPExcel-colspan主题名称,php,phpexcel,Php,Phpexcel,表名:主题 我的预期输出 我的代码 <?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 PHPExce
<?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');
?>
$objWorksheet = $objPHPExcel->getActiveSheet();
$row = 1;
$highestColumn = $objWorksheet -> getHighestColumn();
$highestColumn++;
for($column = 'A'; $column != $highestColumn; $column++)
{
if($column <= 'C')
{
//[HERE]
}
}
$objWorksheet=$objPHPExcel->getActiveSheet();
$row=1;
$highestColumn=$objWorksheet->getHighestColumn();
$highestColumn++;
对于($column='A';$column!=$highestColumn;$column++)
{
如果($column在主题列表上循环执行此操作可能要容易得多:
$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++;
}
如果跨越一列/行,则跨越单元格的地址是该跨越单元格左上角的地址,因此,如果跨越B1->C1以生成单个“两列”单元格,则地址仍然是B1,而C1被隐藏/抑制