CSV导出/导入PHPExcel [英] CSV Export/Import with PHPExcel
本文介绍了CSV导出/导入PHPExcel的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
您可以指导我或提供一些样本代码,以便使用PHPExcel库执行CSV导出和导入操作。
Could you please guide me or provide me with some sample codes for performing CSV export and import using the PHPExcel library?
Excel导出和导入很好,但我需要CSV导出/导入。我有其他方法CSV导出和导入,但是也可以通过PHPExcel完成?
Excel export and import is fine but I need CSV export/import as well. I have other means of CSV export and import, but can it be done via PHPExcel also?
推荐答案
要导入CSV文件PHPExcel对象
To import a CSV file into a PHPExcel object
$inputFileType = 'CSV';
$inputFileName = 'testFile.csv';
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($inputFileName);
从PHPExcel对象导出CSV文件
To export a CSV file from a PHPExcel object
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV');
$objWriter->save('testExportFile.csv');
EDIT
如何读取行和单元格:
$worksheet = $objPHPExcel->getActiveSheet();
foreach ($worksheet->getRowIterator() as $row) {
echo 'Row number: ' . $row->getRowIndex() . "\r\n";
$cellIterator = $row->getCellIterator();
$cellIterator->setIterateOnlyExistingCells(false); // Loop all cells, even if it is not set
foreach ($cellIterator as $cell) {
if (!is_null($cell)) {
echo 'Cell: ' . $cell->getCoordinate() . ' - ' . $cell->getValue() . "\r\n";
}
}
}
如何写入PHPExcel对象:
你不说你的数据来自哪里:这里是如何做一个MySQL查询
How to write to a PHPExcel object: You don't say where your data comes from: here's how to do it from a MySQL Query
$query = sprintf("SELECT firstname, lastname, age, date_of_birth, salary FROM employees WHERE firstname='%s' AND lastname='%s'",
mysql_real_escape_string($firstname),
mysql_real_escape_string($lastname));
$result = mysql_query($query);
$row = 1;
$objPHPExcel->getActiveSheet()->setCellValue('A'.$row, 'First Name')
->setCellValue('B'.$row, 'Last Name')
->setCellValue('C'.$row, 'Age')
->setCellValue('D'.$row, 'Date of birth')
->setCellValue('E'.$row, 'Salary');
$row++;
while ($rec = mysql_fetch_assoc($result)) {
$objPHPExcel->getActiveSheet()->setCellValue('A'.$row, $rec['firstname'])
->setCellValue('B'.$row, $rec['lastname'])
->setCellValue('C'.$row, $rec['age'])
->setCellValue('D'.$row, PHPExcel_Shared_Date::stringToExcel($rec['date_of_birth']))
->setCellValue('E'.$row, $rec['salary']);
$objPHPExcel->getActiveSheet()->getStyle('D'.$row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15);
$objPHPExcel->getActiveSheet()->getStyle('E'.$row)->getNumberFormat()->setFormatCode('£#,##0.00');
$row++;
}
这篇关于CSV导出/导入PHPExcel的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文