PhpSpreadsheet在导入导出Excel时是很好用的,能省不少事,但也有一些坑。
今天就遇到一个,导入的模板,在修改过程中设置了单元格的高度、字体的颜色大小等样式,导入时发现写进去的字段是空的,也就是没有获取到值。
打印发现,这种单元格是RichText类型,需要处理一下才能获取它的值。
由于我只要获取它的文本,所以这样判断处理:
$info = $sheet->getCell("C{$i}")->getValue();
//如果是富文本
if($info instanceof \PhpOffice\PhpSpreadsheet\RichText\RichText){
$info = $info->getPlainText();
}
当然也可以去循环它的属性获取富文本的更多信息,看个人需要吧。