下面就经由过程代码示例来细致引见一下:
运用静态数据建立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猎取数据
注:须要确保变动数据库的衔接参数和查询。另外,该数据库相干代码仅是一个示例。在现实应用程序中,它能够位于差别的文件中,而且还应该有错误处理。
以上就是本篇文章的全部内容,愿望能对人人的进修有所协助。更多精彩内容人人能够关注ki4网相干教程栏目!!!
以上就是怎样运用PHP建立CSV文件?(代码示例)的细致内容,更多请关注ki4网别的相干文章!