ホームページ  >  記事  >  データベース  >  PHP を使用して MySQL データを個別の Excel セルにエクスポートするにはどうすればよいですか?

PHP を使用して MySQL データを個別の Excel セルにエクスポートするにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-25 10:45:14529ブラウズ

How to Export MySQL Data to Separate Excel Cells using PHP?

PHP を使用した個別の Excel セル内の MySQL データの取得

元の PHP スクリプトは、すべてのテキスト値を単一の Excel セルに結合しており、個別の行の目的の出力。この問題を修正するには、データを個別のセルに適切にフォーマットするようにコードを変更します。

以下の更新されたコードには、次の変更が含まれています:

  1. 行の分割: mysql_fetch_row() は、データ行を取得するために利用されます。 row.
  2. フォーマットされたヘッダー: ヘッダー行には MySQL フィールド名が入力されます。
  3. フォーマットされたデータ行: データ行は解析され、分離されます。 Excel との互換性のためにタブで区切られ、引用符で囲まれています。
  4. Excel出力: 書式設定されたデータが Excel 互換 (.xls) ファイルにエコーされます。
<?php
// MySQL connection details
$DB_Server = "localhost";
$DB_Username = "username";
$DB_Password = "password";
$DB_DBName = "databasename";
$DB_TBLName = "tablename";

// Define Excel file name
$filename = "exportfile.xls";

// Connect to MySQL
$Connect = @mysql_connect($DB_Server, $DB_Username, $DB_Password) or die("Couldn't connect to MySQL: " . mysql_error());

// Select database
$Db = @mysql_select_db($DB_DBName, $Connect) or die("Couldn't select database: " . mysql_error());

// Execute query
$sql = "SELECT * FROM $DB_TBLName";
$result = @mysql_query($sql, $Connect) or die("Couldn't execute query: " . mysql_error());

// Set CSV separator (tabs)
$sep = "\t";

// Print column names as headers
for ($i = 0; $i < mysql_num_fields($result); $i++) {
    echo mysql_field_name($result, $i) . $sep;
}
echo "\n";

// Print data rows
while ($row = mysql_fetch_row($result)) {
    $line = '';

    for ($j = 0; $j < mysql_num_fields($result); $j++) {
        if (empty($row[$j])) {
            $line .= "NULL" . $sep;
        } else {
            $line .= '"' . str_replace('"', '""', $row[$j]) . '"' . $sep;
        }
    }

    $line = trim($line);
    echo $line . "\n";
}

// Close MySQL connection
mysql_close($Connect);

// Set file headers for Excel
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$filename");
header("Pragma: no-cache");
header("Expires: 0");

// Echo data to Excel file
echo $line . "\n";

この更新されたコードは、データが個別のセルに分割された Excel ファイルを生成し、要件。

以上がPHP を使用して MySQL データを個別の Excel セルにエクスポートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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