PHPExcel 字符串到时间
PHPExcel String to Time
我创建了一个 Excel 电子表格。在第二列中,我有像 0:11:23
和 2:03:33
这样的值,价值几千行。使用 PHP 我将格式设置为:
$sheet->getStyle($colRange)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4);
但是单元格仍然只是字符串。如果您将单元格从 0:11:22
编辑为 0:11:33 等其他内容,则该单元格将转换为时间。在顶部,它从 0:11:22
变为 0:11:33 AM
自动添加 AM 似乎是一个巨大的变化,然后我可以对文件做我想做的事。
如何将数千个单元格从 0:11:22
更改为 0:11:22 AM
?
试试这个
$sheet
->getStyle($colRange)
->getNumberFormat()
->setFormatCode('[$-C09]d mmm yyyy;@');
那是因为您必须将 date/time 转换为 MS Excel 序列化时间戳,并将该值存储在单元格中;如 /Examples
文件夹中的 PHPExcel Documentation and shown in 02types.php 中所述。
一旦您存储了实际的 MS Excel 时间戳值,您就可以对其应用格式
$objPHPExcel->getActiveSheet()->setCellValue('A12', 'Date/Time')
->setCellValue('B12', 'Time')
->setCellValue('C12', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow ));
$objPHPExcel->getActiveSheet()
->getStyle('C12')
->getNumberFormat()
->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4);
这是一个旧的 post 但也许它会对某人有所帮助...
$objPHPExcel->getActiveSheet()
->setCellValue('E5', '=TEXT(TIMEVALUE("'. $the_str_Time . '"),"[h]:mm")');
TIMEVALUE函数将字符串转为时间,
并且 TEXT 函数为它们提供了所需的格式。
我的是测量时间超过 24 小时
我创建了一个 Excel 电子表格。在第二列中,我有像 0:11:23
和 2:03:33
这样的值,价值几千行。使用 PHP 我将格式设置为:
$sheet->getStyle($colRange)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4);
但是单元格仍然只是字符串。如果您将单元格从 0:11:22
编辑为 0:11:33 等其他内容,则该单元格将转换为时间。在顶部,它从 0:11:22
变为 0:11:33 AM
自动添加 AM 似乎是一个巨大的变化,然后我可以对文件做我想做的事。
如何将数千个单元格从 0:11:22
更改为 0:11:22 AM
?
试试这个
$sheet
->getStyle($colRange)
->getNumberFormat()
->setFormatCode('[$-C09]d mmm yyyy;@');
那是因为您必须将 date/time 转换为 MS Excel 序列化时间戳,并将该值存储在单元格中;如 /Examples
文件夹中的 PHPExcel Documentation and shown in 02types.php 中所述。
一旦您存储了实际的 MS Excel 时间戳值,您就可以对其应用格式
$objPHPExcel->getActiveSheet()->setCellValue('A12', 'Date/Time')
->setCellValue('B12', 'Time')
->setCellValue('C12', PHPExcel_Shared_Date::PHPToExcel( $dateTimeNow ));
$objPHPExcel->getActiveSheet()
->getStyle('C12')
->getNumberFormat()
->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_TIME4);
这是一个旧的 post 但也许它会对某人有所帮助...
$objPHPExcel->getActiveSheet()
->setCellValue('E5', '=TEXT(TIMEVALUE("'. $the_str_Time . '"),"[h]:mm")');
TIMEVALUE函数将字符串转为时间, 并且 TEXT 函数为它们提供了所需的格式。 我的是测量时间超过 24 小时