在PHP中从Excel导入数据

air*_*air 6 php mysql import-from-excel

我想使用PHP从excel文件导入数据,然后如果可能,将其保存到MySQL数据库.

Ale*_*exV 19

从Excel文件导入(XLS)比从CSV文件中导入更难.通常我使用Excel将我的XLS保存为CSV然后使用PHP处理此CSV ...

查看PHP函数fgetcsv:http: //ca.php.net/manual/en/function.fgetcsv.php

<?php
$row = 1;
if (($handle = fopen("test.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        for ($c=0; $c < $num; $c++) {
            echo $data[$c] . "<br />\n";
        }
    }
    fclose($handle);
}
?> 
Run Code Online (Sandbox Code Playgroud)

如果你仍然想直接从PHP加载XLS,那么可能(但是多么可靠)...快速搜索产生了http://sourceforge.net/projects/phpexcelreader/,这可能会有所帮助.


zom*_*bat 8

很有可能.您可以将Excel文件另存为CSV文件,并使用fgetcsv()将该文件读入PHP. fgetcsv()将您的数据解析为一个数组,然后您可以创建SQL查询以放入您的数据库.

如果您正在做的就是将其放入数据库中,您可以完全LOAD DATA INFILE避免使用PHP脚本,而只需在CSV文件中使用MySQL的语法:

LOAD DATA LOCAL INFILE '/importfile.csv'
INTO TABLE test_table
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
(field1, filed2, field3);
Run Code Online (Sandbox Code Playgroud)