我正在尝试从Excel工作表(.xlsx)导入数据。我找到PHPExcel用于导入数据,但在下载文档和源代码后,我很困惑哪个文件对我很重要。我也试图找到该网站上的文件,但没有找到方法。
关于我的任务:从所选工作表中读取Excel工作表数据并将数据插入我的数据库表。
所以我真的很感激如果你会指导我如何使用它。
感谢。
答案 0 :(得分:12)
您可以使用PHPExcel库读取Excel文件并将数据插入数据库。
示例代码如下。
// Include PHPExcel_IOFactory
include 'PHPExcel/IOFactory.php';
$inputFileName = 'sample.xls';
// Read your Excel workbook
try {
$inputFileType = PHPExcel_IOFactory::identify($inputFileName);
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($inputFileName);
} catch(Exception $e) {
die('Error loading file "'.pathinfo($inputFileName,PATHINFO_BASENAME).'": '.$e->getMessage());
}
// Get worksheet dimensions
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow();
$highestColumn = $sheet->getHighestColumn();
// Loop through each row of the worksheet in turn
for ($row = 1; $row <= $highestRow; $row++){
// Read a row of data into an array
$rowData = $sheet->rangeToArray('A' . $row . ':' . $highestColumn . $row,
NULL,
TRUE,
FALSE);
// Insert row data array into database here using your own structure
答案 1 :(得分:8)
通过快速查看文档,使用IOFactory自动确定文件格式。
include 'path/to/PHPExcel/IOFactory.php';
// Let IOFactory determine the spreadsheet format
$document = PHPExcel_IOFactory::load('path/to/spreadsheet.xls');
// Get the active sheet as an array
$activeSheetData = $document->getActiveSheet()->toArray(null, true, true, true);
var_dump($activeSheetData);
答案 2 :(得分:0)
试试这个,这样你就可以开始开发过程了:
include '.... /PHPexcel/Classes/PHPExcel.php';
$dataFfile = "C:/tmp/test_data.xls";
$objPHPExcel = PHPExcel_IOFactory::load($dataFfile);
$sheet = $objPHPExcel->getActiveSheet();
$data = $sheet->rangeToArray('A2:AB5523');
echo "Rows available: " . count($data) . "\n";
foreach ($data as $row) {
print_r($row);
}
将include路径替换为PHPExcel.php的路径
将$dataFile
替换为您的Excel文件
还要调整要导入的单元格的范围