【问题标题】:How to create a excel csv which contains a specific table in my php mysql database如何在我的 php mysql 数据库中创建一个包含特定表的 excel csv
【发布时间】:2017-03-08 09:17:40
【问题描述】:

我想为我的网站制作一个程序,该程序将对我数据库中输入的数据进行 csv 报告。问题是我不知道怎么做。我知道这是可能的,因为我的搜索,但他们都没有真正把它简化到足以让我理解。有人可以把我推向正确的方向吗?

    Date | Entries
    2016 | 99 Records
    2017 | 50 Records

我希望它与列名和行顺序一起显示在 excel 文件中。

【问题讨论】:

  • 你想用 PHP 来实现它,或者如果你用纯 SQL 来实现它也可以吗?因为使用 SQL 可以很容易地完成。 (使用 PHP 也不太难)

标签: php mysql excel csv


【解决方案1】:

首先与您的数据库建立连接:

$databaseName     = ''; 
$databaseHostname = 'localhost'
$databaseUsername = ''; 
$databasePassword = ''; 

$pdo = new PDO(
'mysql:host=' . $databaseHostname . ';dbname=' . $databaseName,
$databaseUsername,
$databasePassword);

现在从表中获取所有数据

$tableName = 'test';
$statement = $pdo->prepare('SELECT * FROM ' . $tableName);
$results = $statement->fetchAll(PDO::FETCH_ASSOC);

现在创建一个 csv 文件

$fileName = 'test.csv';
$csvFile = new SplFileObject($fileName, 'w');

并将数据添加到 csv 文件中。

foreach ($results as $row) {
    $csvFile->fputcsv($row, ";");
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-14
    • 2019-01-17
    • 1970-01-01
    • 1970-01-01
    • 2011-02-14
    • 2021-12-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多