Javascript 将所有列居中,并根据数据长度调整excel列

Javascript 将所有列居中,并根据数据长度调整excel列,javascript,php,html,mysql,phpexcel,Javascript,Php,Html,Mysql,Phpexcel,如何使用PHPexcel?根据excel报表中的数据长度调整列宽?如何使excel中的所有数据居中 当前代码: <?php if (!isset($_POST['send'])) { ?> <!DOCTYPE html> <html> <head> <title>test</title> </head> <body> <?php } else {

如何使用PHPexcel?根据excel报表中的数据长度调整列宽?如何使excel中的所有数据居中

当前代码:

<?php
if (!isset($_POST['send'])) { ?>
    <!DOCTYPE html>
    <html>
    <head>
    <title>test</title>
    </head>
    <body>
<?php } else {
    require_once 'C:\xampp\htdocs\test\Classes\PHPExcel\IOFactory.php';
    $filename = 'file.xlsx';
    $title = $_POST['title'];
    mysql_connect("localhost","root","") or die ("cant connect!");
    mysql_select_db("test") or die ("cant find database!");

    $objReader = PHPExcel_IOFactory::createReader('Excel2007');
    $objReader->setReadDataOnly(true);

    $objPHPExcel = $objReader->load($filename);
    $objWorksheet = $objPHPExcel->getActiveSheet();
    $objWorksheet = $objPHPExcel->setActiveSheetIndex(0);

    $result = mysql_query("SELECT * FROM score");
    if(isset($_POST['send'])){

        $headings = array(
            'ID', 
            'NAME',
            'SCORE 1',
            'SCORE 2',
            'OTHER QUALITIES',
            'INTERVIEW',
            'TOTAL',
            'AIC',
            'BATCHCODE',
        );
        $objPHPExcel->getActiveSheet()->fromArray($headings, null, 'A1');
        $row = 2;
        while( $rows = mysql_fetch_row($result)){
            $objPHPExcel->getActiveSheet()->fromArray($rows, null, 'A' . $row);
            $row++;
        }
    }

    header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
    header('Content-Disposition: attachment;filename="'.$title.'.xlsx"');
    header('Cache-Control: max-age=0');

    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
    $objWriter->save('php://output');
}
if (!isset($_POST['send'])) { ?>

    <form id="form1" name="form1" method="post" action="" >
    <input name="title" type="text" id="title" value="title" />
    <input type="submit" name="send" value="send to excel" id="send" />
    </form>
    </body>
    </html>
<?php }

测试

开发人员文档(标题为“设置列宽”)的
4.6.28节显示了如何设置列宽,并举例说明了如何将列宽设置为自动调整其宽度以适应数据:

如果希望PHPExcel执行自动宽度计算,请使用以下代码。PHPExcel将以最宽列值的宽度近似列

可以按照开发人员文档第4.6.18节(标题为“格式化单元格”)中的说明设置对齐(如居中)

$objPHPExcel->getActiveSheet()
    ->getStyle('C2:I5')
    ->getAlignment()
    ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()
    ->getStyle('C2:I5')
    ->getAlignment()
    ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);