PHPExcel使用笔记 编辑

PHPExcel使用笔记 - 常见操作总结

最近做项目时,PHPExcel插件用得比较频繁,将其常见的操作总结一下…

$objPHPExcel->getDefaultStyle()->getFont()->setName('微软雅黑');  // 设置字体
$objPHPExcel->getDefaultStyle()->getFont()->setSize(11);   // 设置字号
$monthDate = $sheet->setCellValueExplicitByColumnAndRow($colIndex,2, '');  // 填充内容

$monthDate->getStyleByColumnAndRow($colIndex, $rowIndex)->getAlignment()->setWrapText(true)->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER)->setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER);

$monthDate->getColumnDimensionByColumn($col)->setWidth(5);
setWrapText(true): 单元格内换行

setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_CENTER): 设置水平对齐

setVertical(\PHPExcel_Style_Alignment::VERTICAL_CENTER): 设置垂直对齐

设置单元格的背景颜色:

$sheet->getStyleByColumnAndRow($colIndex,2, $colIndex,2)->getFill()->setFillType(\PHPExcel_Style_Fill::FILL_SOLID);
$sheet->getStyleByColumnAndRow($colIndex,2, $colIndex,2)->getFill()->getStartColor()->setRGB('BEBEBE');
// setARGB 只有 RED、GREEN两种常见的颜色...

使用数组方式设置样式:

$styleArray = array(
    'borders' => array(
        'allborders' => array(
            'style' => \PHPExcel_Style_Border::BORDER_THIN
        )
    )
);

$sheet->getStyleByColumnAndRow(0, 1, $colIndex, $rowIndex-1)->applyFromArray($styleArray);

合并单元格并填充内容:

$sheet->mergeCellsByColumnAndRow(0,$rowIndex+1,$colIndex,$rowIndex+1)->setCellValueByColumnAndRow(0, $rowIndex+1, 'content');

给所有的单元格设置边框:

        $objPHPExcel->getActiveSheet()->getStyle('A1:' .
        $objPHPExcel->getActiveSheet()->getHighestColumn() .
        ($objPHPExcel->getActiveSheet()->getHighestRow()-1))->applyFromArray($styleArray);

给字体设置下划线,超链接形式,加上蓝色即可:

    $sheet->getStyleByColumnAndRow(3, $rowIndex)->getFont()->setUnderline()->setUnderline(true);

或:

$styleArray = array(
  'font' => array(
    'underline' => PHPExcel_Style_Font::UNDERLINE_SINGLE
  )
);

$objPHPExcel->getActiveSheet()->getStyle('A1')->applyFromArray($styleArray);

给所有单元格设置自适应高度:

foreach($objPHPExcel->getActiveSheet()->getRowDimensions() as $rd) {
    $rd->setRowHeight(-1);  // 给所有单元格设置自适应高度, 高度随着内容变化
}

http://stackoverflow.com/questions/6054444/how-to-set-auto-height-in-phpexcel

相关链接:
php - How to Apply Borders to All Cells, Not a Range! - Stack Overflow http://stackoverflow.com/questions/16298311/how-to-apply-borders-to-all-cells-not-a-range33

php - PHPEXCEL set border and format for all sheets in spreadsheet - Stack Overflow http://stackoverflow.com/questions/19397953/phpexcel-set-border-and-format-for-all-sheets-in-spreadsheet

php - PHPEXCEL set border and format for all sheets in spreadsheet - Stack Overflow http://stackoverflow.com/questions/19397953/phpexcel-set-border-and-format-for-all-sheets-in-spreadsheet

php - How to do the phpexcel Outside Border - Stack Overflow http://stackoverflow.com/questions/27764204/how-to-do-the-phpexcel-outside-border



作者:极客玩家
出处:https://geekzl.com

如果,您希望更容易地发现我的新文章,不妨点击一下绿色通道的关注我,亦可微信搜索公众号大白技术控关注我。

如果您觉得阅读本文对您有帮助,请点击一下右下方的推荐按钮,您的推荐将是我写作的最大动力!
版权声明:本文为博主原创或转载文章,欢迎转载,但转载文章之后必须在文章页面明显位置注明出处,否则保留追究法律责任的权利。如您有任何疑问或者授权方面的协商,请          .
posted @   大白技术控  阅读(1040)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?

打赏

>>

欢迎打赏支持我 ^_^

扫描二维码打赏

了解更多

点击右上角即可分享
微信分享提示