Javascript 将所有列居中,并根据数据长度调整excel列
如何使用PHPexcel?根据excel报表中的数据长度调整列宽?如何使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 {
<?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);