我使用PHPExcel在.xlsx中生成报告。 在小型数据集(几十行,三张)的初始testing阶段就可以了,但是现在在每张纸上使用超过500行的实际生产数据时,它变得非常慢。 48秒来生成一个文件,当运行一个包含更多信息的报告时,整个事件都会失败,并发生Fatal error: Maximum execution time of 30 seconds exceeded in PHPExcel/Worksheet.php on line 1041 。 有时它在另一个PHPExcel文件,所以我怀疑确切的位置是相关的。 理想情况下,如果可能的话,我想尽快加快速度。 如果不是,那么至less增加这个脚本的执行限制。 我迄今看到的唯一build议是在范围而不是单个单元格中进行样式devise。 不幸的是,我已经在范围内做了我的造型,而且也很less。 还有其他build议吗?
我有问题与PHP的Excel, 我想在一个单元格中创build新的行,但我不能,我已经尝试使用\ n或<br />但它不工作。 这我的代码: $objPHPExcel->getActiveSheet()->setCellValue('H5', 'Hello\nWorld'); // i need this show in two line $objPHPExcel->getActiveSheet()->getStyle('H5')->getAlignment()->setWrapText(true); fyi:我的格式excel是xls而不是xlsx。 非常感谢 :)
我有一个简单的表,如: – id – first_name – last_name – email – phone 我正在使用PHPExcel以XLS格式导出我的数据 $rowNumber = 1; while ($row = mysql_fetch_row($result)) { $col = 'A'; foreach($row as $cell) { $objPHPExcel->getActiveSheet()->setCellValue($col.$rowNumber,$cell); $col++; } $rowNumber++; } $rowNumber = 1; while ($row = mysql_fetch_row($result)) { $col = 'A'; foreach($row as $cell) { $objPHPExcel->getActiveSheet()->setCellValue($col.$rowNumber,$cell); $col++; } $rowNumber++; } 现在我想在一个Cell中合并两个字段first_name & last_name […]
使用下面的代码,我可以使用PHPExcel从Excel文件中读取单元格。 我目前手动定义要读取的行数和列数。 有没有一种方式,PHPExcel可以告诉我有多less行和列我必须读取工作表中的所有数据,例如,即使一些行和列都留空了? $file_name = htmlentities($_POST['file_name']); $sheet_name = htmlentities($_POST['sheet_name']); $number_of_columns = htmlentities($_POST['number_of_columns']); $number_of_rows = htmlentities($_POST['number_of_rows']); $objReader = PHPExcel_IOFactory::createReaderForFile("data/" . $file_name); $objReader->setLoadSheetsOnly(array($sheet_name)); $objReader->setReadDataOnly(true); $objPHPExcel = $objReader->load("data/" . $file_name); echo '<table border="1">'; for ($row = 1; $row < $number_of_rows; $row++) { echo '<tr>'; for ($column = 0; $column < $number_of_columns; $column++) { $value = $objPHPExcel->setActiveSheetIndex(0)->getCellByColumnAndRow($column, $row)->getValue(); echo […]
如何居中文本“testing”? 这是我的代码: <?php /** Error reporting */ error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); date_default_timezone_set('Europe/London'); /** Include PHPExcel */ require_once '../Classes/PHPExcel.php'; $objPHPExcel = new PHPExcel(); $sheet = $objPHPExcel->getActiveSheet(); $sheet->setCellValueByColumnAndRow(0, 1, "test"); $sheet->mergeCells('A1:B1'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save("test.xlsx"); 输出Excel文件:
我在PHPExcel工作。 我是初学者。当我使用下面的代码,它的工作正常。 $phpExcel = new PHPExcel(); $phpExcel->getActiveSheet()->getStyle("A1")->getFont()->setBold(true) ->setName('Verdana') ->setSize(10) ->getColor()->setRGB('6F6F6F'); 但是当我使用下面的代码,并没有得到预期的结果如上。 $phpFont = new PHPExcel_Style_Font(); $phpFont->setBold(true); $phpFont->setName('Verdana'); $phpFont->setSize(15); $phpColor = new PHPExcel_Style_Color(); $phpColor->setRGB('FF0000'); $phpExcel->getActiveSheet()->getStyle('A1')->setFont( $phpFont ); $phpExcel->getActiveSheet()->getStyle('A1')->getFont()->setColor( $phpColor ); 请帮助我在上面的代码中做错了什么。 先谢谢你!
我正在使用phpexcel与PHP生成excel文件。 问题是,如何使用phpexcel使自动高度行? 非常感谢 :)
首先,我对PHPExcel很陌生。 我知道这行代码将使单元格文本换行: $objPHPExcel->getActiveSheet()->getStyle('D1')->getAlignment()->setWrapText(true); “D1”是选定的单元格。 而不是使用这个代码,我需要包装每个单元格,有没有办法让整个Excel工作表自动包装一切? 还是有更好的实践技术用于指定列?
如何使用PHPExcel库dynamic设置单元格/列值? 我从MySQL数据库中获取结果集,我想用ExcelExcel库以excel格式写数据。 看例子 $objPHPExcel->getActiveSheet()->setCellValue('A1', 'cell value here'); 表示我们必须将单元格/列引用硬编码为'A1',然后写入单元格/列A1。 如何根据结果集中的行和相应列值来增加单元格/列和/或行引用? 请指导。
我试图用ExcelExcel生成的Excel文档中设置单元格的宽度: $objPHPExcel->getActiveSheet()->getColumnDimensionByColumn('C')->setWidth('10'); $objPHPExcel->getActiveSheet()->getColumnDimensionByColumn('C')->setAutoSize(false); 但是这不起作用。 我需要在这里打电话的方法是什么?