📜  phpexcel 设置数据类型 - PHP (1)

📅  最后修改于: 2023-12-03 15:18:32.797000             🧑  作者: Mango

PHPExcel 设置数据类型

PHPExcel 是一个非常常用的 PHP 操作 Excel 工具,可以把数组、字符串等数据写入到 Excel 文档中。但有时需要设置 Excel 单元格的数据类型,如日期、百分比等。

设置数据类型

PHPExcel 提供了下列单元格数据类型:

  • PHPExcel_Cell_DataType::TYPE_STRING - 字符串类型
  • PHPExcel_Cell_DataType::TYPE_NUMERIC - 数值类型
  • PHPExcel_Cell_DataType::TYPE_FORMULA - 公式类型
  • PHPExcel_Cell_DataType::TYPE_BOOL - 布尔类型
  • PHPExcel_Cell_DataType::TYPE_NULL - 空类型
  • PHPExcel_Cell_DataType::TYPE_INLINE - 内联字符串类型
  • PHPExcel_Cell_DataType::TYPE_ERROR - 错误数据类型
设置单元格为日期类型
$dateTimeNow = time(); // 获取当前时间戳
$dateValuePhpExcel = PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow ); // 将时间戳格式转换为 Excel 时间格式
$worksheet->setCellValueByColumnAndRow( 1, 1, $dateValuePhpExcel ); // 将 Excel 时间格式的值设置到单元格中
$worksheet->getStyle( 'A1' )->getNumberFormat()->setFormatCode( 'yyyy年m月d日' ); // 设置单元格格式为日期类型

在上述示例中,首先获取当前时间戳,然后将其转换为 Excel 时间格式并将其设置到单元格中,最后通过 setFormatCode 方法把单元格格式设置为日期类型。

设置单元格为百分比类型
$value = 0.8;
$worksheet->setCellValueByColumnAndRow( 1, 1, $value ); // 将值设置到单元格中
$worksheet->getStyle( 'A1' )->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE_00 ); // 设置单元格格式为百分比类型

在上述示例中,首先将值设置到单元格中,然后通过 setFormatCode 方法把单元格格式设置为百分比类型。

设置单元格为科学计数法
$value = 123456789;
$worksheet->setCellValueByColumnAndRow( 1, 1, $value ); // 将值设置到单元格中
$worksheet->getStyle( 'A1' )->getNumberFormat()->setFormatCode( '0.00E+00' ); // 设置单元格格式为科学计数法

在上述示例中,首先将值设置到单元格中,然后通过 setFormatCode 方法把单元格格式设置为科学计数法。

总结

以上就是 PHPExcel 中设置 Excel 单元格数据类型的方法。通过设置单元格格式,可以使 Excel 文档中的数据更加直观、易于阅读。