使用php在本地计算机上保存csv文件
我有一个数组,使用它生成一个CSV,但它并没有在本地保存它 我应该在这里换什么 下面是一个包含代码的数组。无法在本地系统上创建CSV使用php在本地计算机上保存csv文件,php,csv,save,Php,Csv,Save,我有一个数组,使用它生成一个CSV,但它并没有在本地保存它 我应该在这里换什么 下面是一个包含代码的数组。无法在本地系统上创建CSV $example\u data=array( 数组('ID'=>1,'booktitle'=>'季度份额','author'=>'Nathan Lowell', ‘isbn’=>‘978-0982514542’, 数组('ID'=>2,'booktitle'=>'7th Son:Descent','author'=>'J.C.Hutchins', ‘isbn’=>
$example\u data=array(
数组('ID'=>1,'booktitle'=>'季度份额','author'=>'Nathan Lowell',
‘isbn’=>‘978-0982514542’,
数组('ID'=>2,'booktitle'=>'7th Son:Descent','author'=>'J.C.Hutchins',
‘isbn’=>‘0312384378’,
数组('ID'=>3,'booktitle'=>'Shadowmagic','author'=>'John Lenahan',
‘isbn’=>‘978-1905548927’,
数组('ID'=>4,'booktitle'=>'皇冠阴谋','author'=>'迈克尔J.沙利文',
‘isbn’=>‘978-0979621130’,
数组('ID'=>5,'booktitle'=>'Max Quick:口袋和挂件,'author'=>'Mark Jeffrey',
‘isbn’=>‘978-0061988929’,
数组('ID'=>6,'booktitle'=>'杰克醒来:一本小说','author'=>'塞思·哈伍德',
‘isbn’=>‘978-0307454355’)
);
函数outputCsv($fileName,$assocDataArray)
{
if(isset($assocDataArray['0'])){
$fp=fopen('file.csv','w');
fputcsv($fp,数组_键($assocDataArray['0']));
foreach($assocDataArray作为$value){
fputcsv($fp$value);
$data[]=$values;
}
$csv_handler=fopen('file.csv','w');
fwrite($csv_handler,$data);
fclose($csv_handler);
echo“数据保存到csvfile.csv”;
}
}
我只对您的功能做了一点更改,现在正在为我工作:
function outputCsv($fileName, $assocDataArray)
{
if(isset($assocDataArray['0'])){
$fp = fopen($fileName, 'w');
fputcsv($fp, array_keys($assocDataArray['0']));
foreach($assocDataArray AS $values){
fputcsv($fp, $values);
$data[]=$values;
}
/*
$csv_handler = fopen ('file.csv','w');
fwrite ($csv_handler,$data);
fclose ($csv_handler);
*/
fclose($fp);
echo 'Data saved to csvfile.csv';
}
}
outputCsv('test.csv', $example_data);
您试图通过fwrite()函数写入数组类型数据,它只需要字符串。这就是它生成错误的原因。函数不会首先将数组直接写入文件中,您必须执行类似操作(我编辑了您的函数)
你说它不是本地储蓄是什么意思?您是指本地到您的机器还是本地到您的服务器?PHP在服务器端运行,因此file.csv应该与包含上述代码的.PHP文件位于同一目录中。local在我的电脑上的LocahostHP在服务器端运行,但您可以创建指向csv文件的HTML链接,然后下载它?
function outputCsv($fileName, $assocDataArray)
{
if(isset($assocDataArray['0'])){
$data = array();
$fp = fopen('file.csv', 'w');
fputcsv($fp, array_keys($assocDataArray['0']));
foreach($assocDataArray AS $values){
fputcsv($fp, $values);
$data[]=$values;
}
$csv_handler = fopen ('file.csv','w');
fwrite ($csv_handler, print_r($data, true));
fclose ($csv_handler);
echo 'Data saved to csvfile.csv';
}
}