excel自动换行

  • 昨天,跟群友讨论时,有个群友提到如何设置PHPexcel或者laravelexcel换行啊?这个问题,刚好我在工作中有遇到过,于是帮忙回答了。在我遇到这个问题时,我第一反应使用html的
    标签换行,然而并没有解决我的实际问题,后来又想到转义"\r\n",这些各种操作都不能解决我的问题,最后,通过查看源码,发现一个有趣的函数能够解决excel换行问题,代码如下:
 Excel::create($remark, function($excel) use($data,$count) {//员工假期额度明细

            $excel->sheet('store', function($sheet) use($data,$count) {//员工假期额度明细

                //超时处理
                $cacheMethod = \PHPExcel_CachedObjectStorageFactory::cache_in_memory;
                \PHPExcel_Settings::setCacheStorageMethod($cacheMethod);

                $sheet->setWidth(array(
                    'A'     =>  10, 'B'     =>  10, 'C'     =>  10, 'D'     =>  15,
                    'E'     =>  10, 'F'     =>  20, 'G'     =>  20, 'I'     =>  15,
                    'J'     =>  15, 'K'     =>  15, 'L'     =>  15, 'M'     =>  15,
                    'N'     =>  15, 'O'     =>  15, 'P'     =>  15, 'Q'     =>  15,
                    'R'     =>  15, 'S'     =>  15, 'T'     =>  15, 'U'     =>  15,
                    'V'     =>  15, 'W'     =>  15, 'X'     =>  15, 'Y'     =>  15,
                    'Z'     =>  15,'AA'     =>  20, 'AB'     =>  20,'AC'     =>  20,
                    'AD'     =>  20,
                ));

                $sheet->cells('A:AM', function($cells) {

                    $cells->setAlignment('center');
                    $cells->setValignment('center');

                });


                //自动换行,加粗
                $sheet->getStyle('F2:G'.$count)->getAlignment()->setWrapText(true);


                $sheet->fromArray($data,null, 'A1', true, false);

            });

        })->store($extension, storage_path('app/'.$dir));

excel中的setWrapText这个函数就能够是excel自动换行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值