PHP は、Web アプリケーションや Web サイトの開発に使用される人気のあるプログラミング言語です。 Web アプリケーションでは、多くの場合、Excel (.xls または .xlsx) ファイルからデータベースにデータをインポートする必要があります。この記事では、PHPを使用してExcelデータを読み込み、データベースにインポートする方法を紹介します。
PHPExcel は、Excel ファイルを読み取り、処理するための PHP ライブラリです。 PHPExcel ライブラリは、公式 Web サイト (https://phpexcel.codeplex.com/) からダウンロードするか、Composer を使用してインストールできます。 Composer を使用する場合は、composer.json ファイルに次のコードを追加するだけで済みます。
{ "require": { "phpoffice/phpexcel": "1.8.*" } }
コマンド ラインで composer update
コマンドを実行すると、Composer によって PHPExcel が自動的にインストールされます。図書館。
Excel データをインポートする前に、Excel ファイルが必要です。 Microsoft Excel などのソフトウェアを使用して Excel ファイルを作成できます。 Excel ファイルを .xls または .xlsx 形式で保存する必要があることに注意してください。さらに、Excel ファイルの最初の行はヘッダー (列名) である必要があります。例:
名前 | 年齢 | 電子メール | |
---|---|---|---|
John | 25 | john@gmail.com | |
メアリー | 30 | mary@yahoo.com | |
デビッド | 35 | david@outlook.com |
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(); // 在此处可以将行数据插入到数据库中 }
load()
メソッドを使用して PHPExcel オブジェクトを作成し、Excel ファイルからデータを読み込みます。次に、Excel ファイルの最初のワークシートを取得し、getHighestRow() メソッドと
getHighestColumn() メソッドを使用して行と列の数を取得します。最後に、各行を反復処理し、
getCellByColumnAndRow() メソッドを使用して各行のセル データを取得し、データベースに挿入します。
// 连接到数据库 $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(); // 关闭数据库连接
概要
PHP を使用すると、Excel からデータを簡単にインポートできます。 PHPExcel ライブラリを使用して Excel ファイルを読み取り、データをデータベースに挿入するだけです。上記の例では、PHPExcel ライブラリと SQL INSERT ステートメントを使用して MySQL データベースにデータをインポートする方法を示しました。
以上がPHPでExcelデータを読み込んでデータベースにインポートする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。