php 将excel导入mysql

首先我来介绍一下如何使用 PHP 将 Excel 数据导入 MySQL 数据库。

环境准备

在进行 Excel 文件导入之前需要准备以下环境:

  1. PHP 环境,推荐使用 PHP 5.2 版本及以上

  2. 加载并安装 PhpSpreadsheet 扩展库,可以使用 Composer 进行安装,也可手动安装

  3. MySQL 数据库环境

  4. Excel 文件

步骤

  1. 创建一个 PHP 文件,命名为 excel_to_mysql.php,作为导入脚本。

  2. 在脚本中引入 PhpSpreadsheet 类库,如果使用 Composer 安装,则可以使用以下代码进行引入:

require 'vendor/autoload.php';
  1. 连接 MySQL 数据库,创建一个名为 excel 的数据库,并在里面新建一个名为 employees 的表,表结构如下:
CREATE TABLE `employees` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(50) NOT NULL,
  `email` varchar(50) NOT NULL,
  `age` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  1. 使用 PhpSpreadsheet 类库获取 Excel 文件中的数据,并将其插入到 employees 表中,示例如下:
use PhpOffice\PhpSpreadsheet\IOFactory;

//加载Excel文件
$filename = 'employees.xlsx'; 
$inputFileType = IOFactory::identify($filename);
$reader = IOFactory::createReader($inputFileType);

// 选择Excel的工作表
$reader->setLoadSheetsOnly(["Sheet1"]);
$spreadsheet = $reader->load($filename);
$worksheet = $spreadsheet->getActiveSheet();
$rows = $worksheet->toArray();

//把数据写入到数据库
$db_host = 'localhost';
$db_username = 'root';
$db_password = '';
$db_name = 'excel';

// 连接数据库
$conn = mysqli_connect($db_host, $db_username, $db_password, $db_name);
if (!$conn) {
    die("连接失败:" . mysqli_connect_error());
}

//遍历数据,插入数据到表中
foreach ($rows as $key => $row) {
    //跳过第一行,因为它是标题
    if ($key == 0) {
        continue;
    }
    $name = $row[0];
    $email = $row[1];
    $age = $row[2];

    //插入数据到表中
    $sql = "INSERT INTO employees (name, email, age) 
            VALUES ('$name', '$email', '$age')";
    if (mysqli_query($conn, $sql)) {
        echo "插入成功";
    } else {
        echo "出错:" . mysqli_error($conn);
    }
}

//关闭数据库连接
mysqli_close($conn);

示例

下面是两个示例,分别演示了如何使用 PHP 将两个不同的 Excel 文件导入到 MySQL 数据库中。

示例一:employees.xlsx

name email age
Alice alice@example.com 27
Bob bob@example.com 31
Carol carol@example.com 35

示例二:students.xlsx

name email age
Tom tom@example.com 18
Jerry jerry@example.com 19
William william@example.com 20

通过上述步骤和示例,你就可以成功地将 Excel 数据导入到 MySQL 数据库中了。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:php 将excel导入mysql - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月28日

相关文章

  • PHP程序员编程注意事项

    PHP程序员编程注意事项 作为一名PHP程序员,编写高质量、高可维护性、高可扩展性的代码是非常重要的。以下是一些编程注意事项: 1. 代码风格 良好的代码风格可提高代码的可读性和可维护性。建议遵循 PSR 规范,尤其是 PSR-1 和 PSR-2 标准。可以使用 PHP_CodeSniffer 工具来检测代码风格是否符合 PSR 规范。 以下是示例代码: &…

    PHP 2023年5月23日
    00
  • PHP 变量的定义方法

    下面是关于PHP变量定义方法的完整攻略: 1. 变量的定义方法 在PHP中,可以使用$符号来定义一个变量,语法格式为:$变量名 = 值; 例如,定义一个整数变量 $num 并赋值为10,可以如下所示 $num = 10; 需要注意的是,变量名必须以字母或下划线开头,并且不能以数字开头。变量名只能包含字母,数字和下划线。 另外,PHP变量是弱类型的,也就是说,…

    PHP 2023年5月23日
    00
  • php一些公用函数的集合

    PHP 一些公用函数的集合 PHP内置了许多有用的函数来帮助我们完成不同的任务,如字符串操作、数组操作、文件操作等等。以下是一个对常用的一些公用函数的简单介绍。 字符串操作 substr substr() 函数可以从字符串中提取一部分,它需要三个参数:字符串、提取的开始位置、提取的长度。 $str = "hello world"; $su…

    PHP 2023年5月27日
    00
  • PHP守护进程实例

    对于“PHP守护进程实例”的完整攻略,我们可以从以下几个部分进行讲解: 1. 守护进程简介 守护进程(Daemon)是一类在后台运行的系统进程,不受用户登录和注销的影响,一般用于后台任务的处理,如日志记录、定时任务等。 在linux系统中,我们可以使用nohup命令将一个普通的进程变成守护进程。而在PHP中,我们也可以通过一些特定的函数和方法来实现守护进程的…

    PHP 2023年5月30日
    00
  • PHP实现加密的几种方式介绍

    PHP实现加密的几种方式介绍 在Web应用程序中,数据的安全性一直是非常重要的问题。为了确保数据的安全性,很多应用程序都会使用加密技术来保护数据。PHP提供了多种加密技术,本文将介绍几种常用的加密方式以及它们的用途和示例。 哈希算法加密 哈希算法是将任意长度的消息压缩成固定长度的一段代码的函数。这个函数可以将任意长度的消息计算为一个短而且固定的长度,称之为哈…

    PHP 2023年5月23日
    00
  • PHP中遍历二维数组_以不同形式的输出操作实例

    PHP中遍历二维数组可以使用for循环、foreach循环以及while循环等方法。以下是几种不同形式的输出操作实例: 示例一:使用foreach循环输出二维数组 假如我们有一个二维数组$students,包含学生的姓名和学科成绩,数据格式如下: $students = array( array("name" => "To…

    PHP 2023年5月26日
    00
  • 微信小程序实现可实时改变转速的css3旋转动画实例代码

    下面是关于“微信小程序实现可实时改变转速的css3旋转动画实例代码”的完整攻略: 1. 准备工作 在开始撰写实例代码之前,需要进行一些准备工作,包括:1. 创建微信小程序项目;2. 在需要引入旋转动画的页面或组件中,引入CSS文件。 2. 确定旋转元素 在该示例中,我们需要实现一个可以通过js代码实时改变旋转速度的旋转动画,所以需要先确定旋转的元素。这里,我…

    PHP 2023年5月30日
    00
  • PHP入门教程之上传文件实例详解

    对于“PHP入门教程之上传文件实例详解”,本篇攻略将分为以下几个部分进行讲解: 上传文件的基本原理 如何编写PHP文件上传功能 如何处理上传的文件 一个完整的示例 示例解析 1. 上传文件的基本原理 在HTTP协议中,要上传文件,我们需要使用HTTP POST请求,并且使用“multipart/form-data”格式发送请求。具体来说,我们需要在请求头中设…

    PHP 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部