如何使用PHP创建CSV文件?(代码示例)
发布:smiling 来源: PHP粉丝网 添加日期:2019-12-30 14:51:03 浏览: 评论:0
CSV(逗号分隔值)是在应用程序之间传输表格数据的最常用方法之一;创建将数据导出到CSV的代码在许多应用程序中非常有用。下面本篇文章就来带大家了解如何使用PHP创建CSV文件,希望对大家有所帮助。
下面就通过代码示例来具体介绍一下:
使用静态数据创建CSV文件
如果要将数据存储到csv文件中,则可以使用与以下类似的代码:
- <?php
- // 创建并打开“demosaved.csv”文件进行写入
- $file = fopen('demosaved.csv', 'w');
- // 保存列标题
- fputcsv($file, array('Column 1', 'Column 2', 'Column 3', 'Column 4', 'Column 5'));
- // 样本数据,这可以从MySQL中获取
- $data = array(
- array('Data 11', 'Data 12', 'Data 13', 'Data 14', 'Data 15'),
- array('Data 21', 'Data 22', 'Data 23', 'Data 24', 'Data 25'),
- array('Data 31', 'Data 32', 'Data 33', 'Data 34', 'Data 35'),
- array('Data 41', 'Data 42', 'Data 43', 'Data 44', 'Data 45'),
- array('Data 51', 'Data 52', 'Data 53', 'Data 54', 'Data 55')
- );
- // 保存每一行数据
- foreach ($data as $row)
- {
- fputcsv($file, $row);
- }
- // 关闭文件
- fclose($file);
- ?>
代码说明:
第3行:打开文件,文件名为“demosaved.csv”,用于书写。确保服务器可以写入保存此文件的位置
第6行:添加列标题。如果不想要任何列标题,可以跳过此步骤。
第9-15行:表示要存储在文件中的数据。如果你想从mysql中获取数据,你必须用代码来连接数据库并获取数据,进而替换这些行来
第17-21行:遍历每行数据并保存数据
第24行:关闭文件。在我们完成将所有数据写入文件后,需要把文件关闭。
从mysql获取数据来创建并自动下载CSV文件
- <?php
- // 设置输出标头,以便下载文件
- header('Content-type: text/csv');
- header('Content-Disposition: attachment; filename="demo.csv"');
- // 不缓存文件
- header('Pragma: no-cache');
- header('Expires: 0');
- // 创建连接到输出流的文件指针
- $file = fopen('php://output', 'w');
- // 打开数据库连接
- $link = mysqli_connect('localhost', 'my_user', 'my_password', 'my_db');
- //查询数据库
- $query = 'SELECT field1, field2, field3, field4, field5 FROM table';
- if ($rows = mysqli_query($link, $query))
- {
- // 保存每一行数据
- while ($row = mysqli_fetch_assoc($rows))
- {
- fputcsv($file, $row);
- }
- //自由结果集
- mysqli_free_result($result);
- }
- // 关闭连接
- mysqli_close($link);
- ?>
代码说明:
因为我们要下载文件,所以我们必须发送一些头文件(第3行和第4行),告诉浏览器下载该文件。
第3行:告诉浏览器内容的MIME类型是text / csv,因为我们要发送一个csv文件
第4行:发送标头“Content-Disposition”,其值为“attachment”,文件名为“demo.csv”。这将告诉浏览器下载名为“demo.csv”的文件,而不是显示它。
第7行和第8行:告诉浏览器不要缓存文件。如果我们发送多个同名文件,这很有用,否则这不是必需的
第11行:表示打开文件指针以发送数据
第14行~第30行:从mysql获取数据
注:需要确保更改数据库的连接参数和查询。此外,该数据库相关代码仅是一个示例。在实际应用程序中,它可能位于不同的文件中,并且还应该有错误处理。
Tags: PHP创建CSV文件
- 上一篇:如何使用php删除字符串的最后一个字符
- 下一篇:如何在PHP中读取XML文件
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)