Heim  >  Artikel  >  Backend-Entwicklung  >  So lesen Sie Excel-Daten in PHP ein und importieren sie in die Datenbank

So lesen Sie Excel-Daten in PHP ein und importieren sie in die Datenbank

PHPz
PHPzOriginal
2023-03-24 10:58:272414Durchsuche

PHP ist eine beliebte Programmiersprache für die Entwicklung von Webanwendungen und Websites. In Webanwendungen ist es häufig notwendig, Daten aus Excel-Dateien (.xls oder .xlsx) in eine Datenbank zu importieren. In diesem Artikel wird erläutert, wie Sie mit PHP Excel-Daten lesen und in die Datenbank importieren.

  1. PHPExcel installieren

PHPExcel ist eine PHP-Bibliothek zum Lesen und Verarbeiten von Excel-Dateien. Sie können die PHPExcel-Bibliothek von der offiziellen Website (https://phpexcel.codeplex.com/) herunterladen oder mit Composer installieren. Wenn Sie Composer verwenden, müssen Sie nur den folgenden Code zur Datei „composer.json“ hinzufügen:

{
    "require": {
        "phpoffice/phpexcel": "1.8.*"
    }
}

Führen Sie den Befehl composer update in der Befehlszeile aus, und Composer installiert automatisch die PHPExcel-Bibliothek. composer update命令,Composer将自动安装PHPExcel库。

  1. 创建Excel文件

在导入Excel数据之前,您需要有一个Excel文件。您可以通过Microsoft Excel等软件创建一个Excel文件。注意,您需要将Excel文件保存为.xls或.xlsx格式。另外,Excel文件的第一行应该是表头,即列名称。例如:

ID Name Age Email
1 John 25 john@gmail.com
2 Mary 30 mary@yahoo.com
3 David 35 david@outlook.com
  1. 读取Excel文件

使用PHPExcel读取Excel文件很简单。只需要按照以下步骤操作:

require_once 'vendor/autoload.php'; // 引入PHPExcel库

$path = 'example.xlsx'; // Excel文件路径

// 创建PHPExcel对象
$excel = PHPExcel_IOFactory::load($path);

// 获取Excel的第一个工作表
$sheet = $excel->getActiveSheet();

// 获取工作表中的行数和列数
$highestRow = $sheet->getHighestRow();
$highestColumn = $sheet->getHighestColumn();

// 遍历每一行
for ($row = 2; $row <= $highestRow; $row++) {
    // 获取每一行的数据
    $id = $sheet->getCellByColumnAndRow(0, $row)->getValue();
    $name = $sheet->getCellByColumnAndRow(1, $row)->getValue();
    $age = $sheet->getCellByColumnAndRow(2, $row)->getValue();
    $email = $sheet->getCellByColumnAndRow(3, $row)->getValue();

    // 在此处可以将行数据插入到数据库中
}

在以上示例中,我们使用PHPExcel库的load()方法创建PHPExcel对象,并从Excel文件中加载数据。然后,我们获取Excel文件的第一个工作表,并使用getHighestRow()getHighestColumn()方法获取行数和列数。最后,我们遍历每一行,使用getCellByColumnAndRow()

      Excel-Datei erstellen
    1. Bevor Sie Excel-Daten importieren, benötigen Sie eine Excel-Datei. Sie können eine Excel-Datei mit einer Software wie Microsoft Excel erstellen. Beachten Sie, dass Sie die Excel-Datei im .xls- oder .xlsx-Format speichern müssen. Darüber hinaus sollte die erste Zeile der Excel-Datei die Kopfzeile sein, also den Spaltennamen. Zum Beispiel:
    ID Name Alter E-Mail
    1 John 25 john@gmail.com
    2 Mary 30 mary@yahoo.com
    3 David 35 david@outlook.com

      Excel-Datei lesen

      Das Lesen von Excel-Dateien ist mit PHPExcel ganz einfach. Befolgen Sie einfach diese Schritte:

      // 连接到数据库
      $servername = "localhost";
      $username = "username";
      $password = "password";
      $dbname = "myDB";
      
      $conn = new mysqli($servername, $username, $password, $dbname);
      
      if ($conn->connect_error) {
          die("Connection failed: " . $conn->connect_error);
      }
      
      // 插入数据到数据库中
      for ($row = 2; $row <= $highestRow; $row++) {
          $id = $sheet->getCellByColumnAndRow(0, $row)->getValue();
          $name = $sheet->getCellByColumnAndRow(1, $row)->getValue();
          $age = $sheet->getCellByColumnAndRow(2, $row)->getValue();
          $email = $sheet->getCellByColumnAndRow(3, $row)->getValue();
      
          $sql = "INSERT INTO myTable (id, name, age, email)
                  VALUES ('$id', '$name', '$age', '$email')";
      
          if ($conn->query($sql) === TRUE) {
              echo "New record created successfully";
          } else {
              echo "Error: " . $sql . "<br>" . $conn->error;
          }
      }
      
      $conn->close(); // 关闭数据库连接
      Im obigen Beispiel verwenden wir die Methode load() der PHPExcel-Bibliothek, um ein PHPExcel-Objekt zu erstellen und Daten aus einer Excel-Datei zu laden. Dann holen wir uns das erste Arbeitsblatt der Excel-Datei und verwenden die Methoden getHighestRow() und getHighestColumn(), um die Anzahl der Zeilen und Spalten zu ermitteln. Schließlich durchlaufen wir jede Zeile, verwenden die Methode getCellByColumnAndRow(), um die Zelldaten jeder Zeile abzurufen, und fügen sie in die Datenbank ein.

      🎜🎜Datenbankeinfügung🎜🎜🎜🎜 Um Daten aus einer Excel-Datei in die Datenbank einzufügen, können Sie die SQL-Anweisung INSERT verwenden. Sie müssen also zuerst eine Verbindung zur Datenbank herstellen und dann die Daten in die Datenbank einfügen. 🎜rrreee🎜Im obigen Beispiel verwenden wir MySQL, um eine Verbindung zur MySQL-Datenbank herzustellen. In jeder Datenzeile verwenden wir die SQL-Anweisung INSERT, um die Daten in die Tabelle myTable einzufügen. Bei erfolgreichem Einfügen erhalten wir die Meldung „Neuer Datensatz erfolgreich erstellt“, andernfalls wird eine Fehlermeldung ausgegeben. 🎜🎜🎜Zusammenfassung🎜🎜🎜Es ist einfach, Daten aus Excel mit PHP zu importieren. Sie müssen lediglich die PHPExcel-Bibliothek verwenden, um die Excel-Datei zu lesen und die Daten in die Datenbank einzufügen. Im obigen Beispiel haben wir gezeigt, wie man mithilfe der PHPExcel-Bibliothek und SQL-INSERT-Anweisungen Daten in eine MySQL-Datenbank importiert. 🎜

Das obige ist der detaillierte Inhalt vonSo lesen Sie Excel-Daten in PHP ein und importieren sie in die Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn