【问题标题】:Create CSV and save on local/server automatically创建 CSV 并自动保存在本地/服务器上
【发布时间】:2013-06-10 13:03:38
【问题描述】:

我需要在 PHP 中创建一个 CSV 文件,并且创建的文件应该保存在本地/服务器上,而不是要求保存。

【问题讨论】:

  • 只需将输出写入文件而不是输出到浏览器
  • 您能否澄清或提供更多详细信息?我将您的问题解释为:“我有一台运行 PHP 的服务器。我需要在 PHP 中生成一个 CSV 文件并保存在本地文件系统中。” ——这是正确的解释吗?我想我不明白你什么时候会被“要求保存”。

标签: php csv download


【解决方案1】:

对于 5.1.0 之后的 PHP 版本,您可以使用内置的 CSV 函数。

<?php

$data_array = array (
            array ('col1','col2'),
            array ('2','2'),
            array ('3','6'),
            array ('4','2'),
            array ('6','5')
        );

$fp = fopen('csvfile.csv', 'w');

foreach ($list as $fields) {
    fputcsv($fp, $fields);
}

fclose($fp);
?>

这段代码可以解决问题

$data_array = array (
            array ('1','2'),
            array ('2','2'),
            array ('3','6'),
            array ('4','2'),
            array ('6','5')
            );

$csv = "col1,col2 \n";//Column headers
foreach ($data_array as $record){
    $csv.= $record[0].','.$record[1]."\n"; //Append data to csv
    }

$csv_handler = fopen ('csvfile.csv','w');
fwrite ($csv_handler,$csv);
fclose ($csv_handler);

echo 'Data saved to csvfile.csv';

但请确保 csvfile 的权限,以便您的脚本可以在其上创建或写入

【讨论】:

  • @samyMassoud csvfile.csv 是否必须已经存在于服务器上,还是您正在动态创建它?
  • fopen 将动态创建它,如果它对该文件的文件夹具有权限
猜你喜欢
  • 1970-01-01
  • 2019-08-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多