将导出的 csv 保存到应用存储上的某个位置
Posted
技术标签:
【中文标题】将导出的 csv 保存到应用存储上的某个位置【英文标题】:Save exported csv to a location on app storage 【发布时间】:2020-07-13 07:52:07 【问题描述】:我正在尝试将一些失败的记录作为 csv 保存到我的 laravel 应用程序存储中。我已经完成了这个php documentation,但是如何将文件存储在所需的位置是我的挑战。
$failedRecordArrayFile = arrayToCsv($failedRecordArray, "file101.csv");
function arrayToCsv($data, $fileName)
$fp = fopen($fileName, 'w');
foreach ($data as $fields)
fputcsv($fp, $fields);
fclose($fp);
我运行了上面的代码块并在整个应用程序中检查了文件名“file101.csv”,但找不到任何结果。
【问题讨论】:
您是否尝试将绝对路径传递给fopen
?
嗨,请参阅下面的建议答案...其中一个功能可能需要放在首位...干杯
@Ruperto 该函数实际上是从辅助类调用的。这不应该是问题
我明白了。我也许会尝试 storage_path()
我不明白您所说的 storage_path() 是什么意思
【参考方案1】:
这样就可以了……
<?php
function arrayToCsv($data, $fileName)
$fp = fopen($fileName, 'w');
foreach ($data as $fields)
fputcsv($fp, $fields);
fclose($fp);
$failedRecordArray = array(array('col1','col2','col3','col4'), array('This','is','a','test'));
$failedRecordArrayFile = arrayToCsv($failedRecordArray, "file101.csv");
?>
file101.csv
col1,col2,col3,col4
This,is,a,test
【讨论】:
请把文件存储在哪里(位置)。我正在使用 laravel以上是关于将导出的 csv 保存到应用存储上的某个位置的主要内容,如果未能解决你的问题,请参考以下文章