【问题标题】:Read all rows from excel (.xls) and then insert into database (PHP)从 excel (.xls) 中读取所有行,然后插入数据库 (PHP)
【发布时间】:2013-07-01 13:34:40
【问题描述】:

谁能给我提供从 excel 文件 (.xls) 读取数据然后将该记录插入数据库的步骤或整个代码?

提前致谢,

【问题讨论】:

  • 如果是一次性的,保存为csv然后使用fgetcsv然后插入到db中
  • 或使用load data infile,但请在发帖前尝试一下
  • 导出为 csv 更容易,或者使用PHPexcel

标签: php database excel


【解决方案1】:

使用PHPExcel 库。见documentation examples

/** 包含路径**/ set_include_path(get_include_path() . PATH_SEPARATOR . '../../../Classes/');

/** PHPExcel_IOFactory */
include 'PHPExcel/IOFactory.php';
$inputFileName = './sampleData/example1.xls';
echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory to identify the format<br />';
$objPHPExcel = PHPExcel_IOFactory::load($inputFileName);

$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
var_dump($sheetData);

【讨论】:

    【解决方案2】:

    如果必须使用 PHP,有两种方法:

    1. 使用像 phpexcel 这样的库,它将读取本机 XLS 格式。您的成功率取决于该库在破译 XLS 格式方面的能力。

    2. 每张工作表转换为纯文本格式(如 CSV 文件)。可以使用fgetcsv 在 PHP 中轻松读取这些内容。

    如果你只是想将 Excel 中的数据导入 MySQL,有MySQL for Excel,一个来自 MySQL 开发者的 Excel 插件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-10
      • 2017-10-13
      • 1970-01-01
      • 1970-01-01
      • 2012-07-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多