ホームページ  >  記事  >  データベース  >  PHP 開発のヒント: PHPExcel と PHPExcel_IOFactory を使用して MySQL データベースを操作する方法

PHP 開発のヒント: PHPExcel と PHPExcel_IOFactory を使用して MySQL データベースを操作する方法

WBOY
WBOYオリジナル
2023-07-02 14:28:401160ブラウズ

PHP 開発のヒント: PHPExcel および PHPExcel_IOFactory を使用して MySQL データベースを操作する方法

概要:
Web 開発では、Excel ファイルの処理は一般的かつ重要なタスクです。 PHPExcel は、Excel ファイルの読み書きに役立つ強力で使いやすい PHP ライブラリです。この記事では、MySQL データベースを操作するための PHPExcel および PHPExcel_IOFactory ライブラリを使用する方法を紹介します。

ステップ 1: 準備
まず、PHPExcel ライブラリと PHPExcel_IOFactory ライブラリが PHP サーバーにインストールされていることを確認します。公式 Web サイトから最新バージョンをダウンロードし、プロジェクト ディレクトリに抽出できます。

ステップ 2: データベース接続を作成する
PHPExcel を使用する前に、MySQL データベースとの接続を確立する必要があります。データベース接続は、次のコード例を使用して作成できます。

<?php
$servername = "localhost";
$username = "yourusername";
$password = "yourpassword";
$dbname = "yourdbname";

// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);

// 检查连接是否成功
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
?>

ステップ 3: MySQL データベースからデータを読み取り、Excel ファイルを生成する
次に、PHPExcel ライブラリを使用して MySQL データベースからデータを読み取り、対応する Excel ファイルを生成します。以下はサンプル コードです:

<?php
require 'PHPExcel/PHPExcel.php';

// 创建一个新的Excel对象
$objPHPExcel = new PHPExcel();

// 选择活动工作表
$objPHPExcel->setActiveSheetIndex(0);

// 查询数据库中的数据
$sql = "SELECT * FROM your_table_name";
$result = $conn->query($sql);

// 设置Excel表头
$objPHPExcel->getActiveSheet()->setCellValue('A1', '列1标题');
$objPHPExcel->getActiveSheet()->setCellValue('B1', '列2标题');
$objPHPExcel->getActiveSheet()->setCellValue('C1', '列3标题');

// 将数据库查询结果填充到Excel中
if ($result->num_rows > 0) {
    $row = 2;
    while($row_data = $result->fetch_assoc()) {
        $objPHPExcel->getActiveSheet()->setCellValue('A'.$row, $row_data['column1']);
        $objPHPExcel->getActiveSheet()->setCellValue('B'.$row, $row_data['column2']);
        $objPHPExcel->getActiveSheet()->setCellValue('C'.$row, $row_data['column3']);
        $row++;
    }
}

// 保存Excel文件
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$objWriter->save('output.xlsx');
?>

コード サンプルでは、​​まず新しい Excel オブジェクトを作成し、アクティブなワークシートを選択します。次に、データベースにクエリを実行してデータを取得し、setCellValue メソッドを使用してデータを Excel に入力します。最後に、Excel ファイルを Output.xlsx として保存します。

ステップ 4: Excel ファイルから MySQL データベースにデータをインポートする
PHPExcel は、データベースからデータをエクスポートするだけでなく、Excel ファイルから MySQL データベースにデータをインポートすることもできます。以下はサンプル コードです:

<?php
require 'PHPExcel/PHPExcel.php';

// Load Excel文件
$objPHPExcel = PHPExcel_IOFactory::load('input.xlsx');

// 选择活动工作表
$objPHPExcel->setActiveSheetIndex(0);
$sheet = $objPHPExcel->getActiveSheet();

// 循环遍历Excel行
foreach ($sheet->getRowIterator() as $row) {
    $cellIterator = $row->getCellIterator();
    $cellIterator->setIterateOnlyExistingCells(false);

    // 获取每个单元格的值
    $column1 = $cellIterator->current()->getValue();
    $cellIterator->next();
    $column2 = $cellIterator->current()->getValue();
    $cellIterator->next();
    $column3 = $cellIterator->current()->getValue();

    // 将数据插入到数据库中
    $sql = "INSERT INTO your_table_name (column1, column2, column3) VALUES ('$column1', '$column2', '$column3')";
    $conn->query($sql);
}
?>

上記のコードでは、最初に Excel ファイルをロードし、アクティブなワークシートを選択します。次に、行とセルをループすることによって、各セルの値を取得し、それを MySQL データベースに挿入します。

結論:
PHPExcel ライブラリと PHPExcel_IOFactory ライブラリを使用すると、Excel ファイルを簡単に処理し、MySQL データベース データを操作できます。この記事では、これら 2 つのライブラリを使用して MySQL データベースからデータを読み取り Excel ファイルを生成する方法、および Excel ファイルから MySQL データベースにデータをインポートする方法について説明します。これらのサンプルコードが、PHP 開発における Excel 操作に役立つことを願っています。

以上がPHP 開発のヒント: PHPExcel と PHPExcel_IOFactory を使用して MySQL データベースを操作する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。