通过 PHP 导出为 CSV

2023-12-01

假设我有一个数据库......有没有一种方法可以通过 PHP 将数据库中的内容导出到 CSV 文件(和文本文件[如果可能])?


我个人使用此函数从任何数组创建 CSV 内容。

function array2csv(array &$array)
{
   if (count($array) == 0) {
     return null;
   }
   ob_start();
   $df = fopen("php://output", 'w');
   fputcsv($df, array_keys(reset($array)));
   foreach ($array as $row) {
      fputcsv($df, $row);
   }
   fclose($df);
   return ob_get_clean();
}

然后您可以使用以下命令让您的用户下载该文件:

function download_send_headers($filename) {
    // disable caching
    $now = gmdate("D, d M Y H:i:s");
    header("Expires: Tue, 03 Jul 2001 06:00:00 GMT");
    header("Cache-Control: max-age=0, no-cache, must-revalidate, proxy-revalidate");
    header("Last-Modified: {$now} GMT");

    // force download  
    header("Content-Type: application/force-download");
    header("Content-Type: application/octet-stream");
    header("Content-Type: application/download");

    // disposition / encoding on response body
    header("Content-Disposition: attachment;filename={$filename}");
    header("Content-Transfer-Encoding: binary");
}

使用示例:

download_send_headers("data_export_" . date("Y-m-d") . ".csv");
echo array2csv($array);
die();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过 PHP 导出为 CSV 的相关文章

  • PHP更改小数点分隔符

    在某些情况下 PHP 会在操作后更改小数点分隔符 下面是一个示例 为什么小数点分隔符变成 这是一个多语言网站 在西班牙语版本中 区域设置设置为西班牙语 es ES 小数点分隔符为 这就是为什么正在改变 解决方案是强制 LC NUMERIC
  • 如何跟踪访问者所在的国家/地区并将他们重定向到适当的网站?

    我想跟踪访问者的国家 地区 然后将他们重定向到我网站的适当子域 就像谷歌所做的那样 如果我应该使用任何API 我可以在多大程度上依赖API的数据 我用的是php 下载并安装Maxmind 的 GeoLite 国家 http www maxm
  • 让我的函数访问外部变量

    我外面有一个数组 myArr array 我想让我的函数访问其外部的数组 以便它可以向其中添加值 function someFuntion myVal some processing here to determine value of m
  • 如何在 PHP 中获取 html 中的文件路径?

    有人可以告诉我如何使用 html 获取文件路径
  • PHP 数组 - 如何将数组转换为对象? [复制]

    这个问题在这里已经有答案了 我对 PHP 还很陌生 所以请耐心等待 所以我收到这个错误 注意 尝试在此行获取非对象的属性 echo tr td row gt last name td td row gt first name td td r
  • 将嵌套数组中的“点符号”键扩展到子数组

    我从某个任意深度的嵌套数组开始 在该数组中 一些键是一系列由点分隔的标记 例如 billingAddress street 或 foo bar baz 我想将这些键控元素扩展到数组 因此结果是一个嵌套数组 其中所有这些键都已扩展 例如 bi
  • Codeigniter 滚动分页

    我正在使用 jquery 插件滚动分页在 codeigniter 中 我面临的问题是我的循环不会终止 并且也无法给出准确的结果 这是我的html code div div div class image box style margin l
  • SWIG 生成的代码无法在 PHP 5.3.2 上运行未定义的符号:zend_error_noreturn

    我有一个库 在 PHP 5 1 6 生成的一些包装器代码的帮助下 我已经成功地使用了它SWIG http www swig org v1 3 40 我刚刚升级到 PHP 5 3 2 但看到以下错误 PHP Warning PHP Start
  • php 中的 cpu_get_usage ?

    我创建了一个基准类 允许用户插入例如 timer gt checkpoint 1 检查一些代码的时间 内存消耗等 如果她 他想测试它 她 他必须在代码末尾插入 result timer gt result 这会向公共函数 result 提供
  • AWS Athena csv 元数据分隔符在首次查询使用后发生更改

    我想向 athena 查询 s3 csv 文件 源 csv 文件描述 分隔符 system information val1 val2 val3 val4 val5 在此基础上我在 athena 中创建表 Create external t
  • 如何从 WooCommerce 中的订单获取客户详细信息?

    我有一个函数可以执行此操作 order new WC Order order id customer new WC Customer order id 我如何从中获取客户详细信息 我已经尝试了文档中的所有内容 但不知何故 只存在一些细节 但
  • 通过 PayPal REST API 示例获得折扣?

    PayPal GURUS 我需要帮助 如何插入折扣 我使用 REST API 可能是某个 可以显示代码示例吗 有什么方法可以使用 PHP REST API 发送折扣金额吗 目前 REST 支付 API 不支持折扣 您最好的选择是计算您端的折
  • 如何将选择下拉列表转换为多个复选框?

    我想将下面的下拉代码转换为多选复选框值 我正在使用 WordPress 下面的代码来自第三方网站 我无权访问该第三方网站 因此 通过此功能 我可以在下拉菜单中提供多选选项 div class facilities span class la
  • 通过CompilerPass注册自定义AttributeBag

    我正在尝试通过将自定义 AttributBags 集成到会话中来整理我的会话变量 在 Symfony 查看相关问题 如何向 symfony 会话添加额外的包 https stackoverflow com questions 4472361
  • 命令“tinker”未定义

    从 5 3 升级到 5 4 后 请按照说明操作 为了继续使用 Tinker Artisan 命令 您还应该安装 laravel tinker 软件包 composer require laravel tinker 安装软件包后 您应该添加
  • php 无法连接到 mysql,错误为 13(但命令行可以)

    我在新安装的服务器中遇到了奇怪的情况 谷歌这次似乎无法帮助我 我无法从我的 php 代码连接到 远程 mysql 当我尝试从同一服务器上的命令行连接时 连接成功 无法连接 无法连接到 MYSQL SERVER 上的 MySQL 服务器 13
  • 谁添加“_”单下划线查询参数?

    我有一个在 Apache 上运行的 PHP 服务器 我收到很多类似这样的请求 10 1 1 211 02 Sep 2010 16 14 31 0400 GET request 1283458471913 action get list HT
  • 如何更新 Laravel 编辑视图中的图像?

    在 Laravel 中 我的编辑视图中有一个名为 个人资料图片 的字段 每当我单击 编辑 按钮时 我都会在编辑视图中从数据库中获取所有值 但没有获得图像 并且如果每当我每次单击 提交 按钮时 我都必须如果没有上传图像 我无法进一步处理我想要
  • Laravel - 保存在存储文件夹中的图像不向用户显示

    我有这段代码可以将图像保存在 storage app uploads 文件夹中 image main Image where property id id gt get file request gt file file destinati
  • 危险的 PHP 函数

    我将用户输入的 php 函数存储到 mySQL 数据库中 这些函数需要能够被执行 正如我们所知 这可以并且将会允许黑客先生将一个漂亮的网站变成瑞士奶酪 这些函数很简单 不需要任何高级的 php 编码 它们更多地涉及处理单个数据数组 因此 如

随机推荐