php将array变成csv格式

本文介绍了一种使用PHP将数组转换为CSV文件并提供下载的方法。通过直接在内存中生成CSV内容,避免了临时文件的使用,提高了效率。此外,还展示了如何设置HTTP头来确保文件正确下载。
 1 function array_to_csv_download($array, $filename = "export.csv", $delimiter=";") {
 2     // open raw memory as file so no temp files needed, you might run out of memory though
 3     $f = fopen('php://memory', 'w'); 
 4     // loop over the input array
 5     foreach ($array as $line) { 
 6         // generate csv lines from the inner arrays
 7         fputcsv($f, $line, $delimiter); 
 8     }
 9     // rewrind the "file" with the csv lines
10     fseek($f, 0);
11     // tell the browser it's going to be a csv file
12     header('Content-Type: application/csv');
13     // tell the browser we want to save it instead of displaying it
14     header('Content-Disposition: attachement; filename="'.$filename.'";');
15     // make php send the generated csv lines to the browser
16     fpassthru($f);
17 }

 

 1         $f = fopen('php://memory', 'w'); 
 2 //        $lca=implode("\r\n",$new_rcarray);
 3 //        fwrite($f,$lca);
 4 //        fseek($f, 0);
 5         foreach ($new_rcarray as $v){
 6             fwrite($f,$v."\r\n");
 7         }
 8         fseek($f, 0);
 9         
10         header("Content-type:text/csv");
11         header("Content-Type: application/force-download");
12         header("Content-Disposition: attachment; filename=local_calling_area.txt");
13         header('Expires:0');
14         header('Pragma:public');
15         //echo "\xFF\xFE".mb_convert_encoding($lca,'UCS-2LE','UTF-8');
16         fpassthru($f);

 

转载于:https://www.cnblogs.com/sexy/articles/3875624.html

### 如何使用 Python 将 NumPy 数组保存到 CSV 文件 可以通过 `numpy.savetxt` 方法将 NumPy 数组保存到 CSV 文件中。此方法允许指定分隔符、文件名以及其他可选参数来控制输出格式。 以下是实现这一功能的具体方式: #### 基本语法 `numpy.savetxt` 的基本调用形式如下: ```python import numpy as np np.savetxt(fname, X, delimiter=',') ``` 其中: - **fname**: 输出文件的名称或路径。 - **X**: 要保存的 NumPy 数组。 - **delimiter**: 列之间的分隔符,默认为空格 `' '`,对于 CSV 文件通常设置为逗号 `','`[^4]。 #### 示例代码 以下是一些具体的例子,展示了如何将不同类型的 NumPy 数组保存到 CSV 文件中。 ##### 示例 1: 导出简单二维数组至 CSV 文件 ```python import numpy as np # 定义一个简单的二维 NumPy 数组 data = np.array([[1, 2, 3], [4, 5, 6]]) # 使用 savetxt 函数导出数据到名为 'data.csv' 的文件 np.savetxt('data.csv', data, delimiter=',') # 设置分隔符为逗号 ``` 上述代码会创建一个名为 `data.csv` 的文件,并将数组中的每一行作为单独的一行写入该文件[^1]。 ##### 示例 2: 添加表头信息 如果希望在 CSV 文件的第一行添加表头,则可以利用 `header` 参数完成此项操作。 ```python import numpy as np # 同样定义一个二维数组 data = np.array([[10, 20, 30], [40, 50, 60]]) # 导出并附加自定义表头 np.savetxt('data_with_header.csv', data, delimiter=',', header="ColumnA,ColumnB,ColumnC", comments='') # 注意这里设定了comments=''以防止默认'#' ``` 通过设定 `comments=''` 可避免表头被解释成注释部分。 ##### 示例 3: 自定义数值格式化 有时可能需要调整数值显示精度或其他格式选项,在这种情况下可以借助 `fmt` 参数。 ```python import numpy as np # 创建浮点型数组 float_data = np.random.rand(3, 3) # 按照特定格式(保留两位小数)保存到CSV文件 np.savetxt('formatted_floats.csv', float_data, fmt='%.2f', delimiter=',') ``` 此处设置了 `fmt='%.2f'` 来确保所有数字均四舍五入至两位小数后再存盘[^4]。 --- ### 总结注意事项 当尝试把 NumPy 数组存储为 CSV 格式的文本文件时,请注意以下几个方面: - 正确配置好各个必要参数如 `fname`, `X`, 和 `delimiter`. - 对于特殊需求比如加入头部说明或是改变字段间界限符号等可通过额外参数灵活处理. - 若涉及复杂的数据结构化则需提前做好预处理工作.
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值