我通过excel文件将大量数据插入数据库 我永远无法确定如何格式化excel中的单元格,因为有多个人在更改和上传该文件 我似乎无法让PHPExcel中的数字格式化工作。我想将单元格中的值格式化为没有千位分隔符的数字。我知道我错过了一些非常明显的东西,但我真的很感激任何帮助 我已经在代码中添加了两种方法,我也搜索了这个主题,但似乎没有任何工作。
require_once '../PHPExcel/Classes/PHPExcel/IOFactory.php';
$objPHPExcel = PHPExcel_IOFactory::load( $inputFileName );
$sheetData = $objPHPExcel->getActiveSheet()->toArray( null, true, true, true );
$i = 1;
foreach ( $sheetData as $key => $data ) {
if ( $key > 2 && $data['A'] != '' ) {
$article = $data['A'];
foreach ( $data as $col => $value ) {
// this does not work
//$val = $sheetData->getStyle($col.$i)->getNumberFormat()->setFormatCode('0');
// this does not work either
//$sheetData->getStyle($col.':'.$i)->getNumberFormat()->setFormatCode( PHPExcel_Style_NumberFormat::FORMAT_TEXT );*/
if ( $col != 'A' && $value != '' && $value != '0' && $value != '-' ) {
echo $val.'<br>';
// database insert...
}
}
}
$i++;
}
通过不起作用的示例,它给了我错误:
捕获致命错误:类
PHPExcel_Style_NumberFormat
的对象无法转换为字符串。