我想编写一个csv文件输出的程序,用户输入相关信息之后,点击按钮提示用户保存路径,输出的文件类型是“.csv”的,该程序不使用数据库,只是对文本进行操作,也就是用户输入的信息存入文本“2009-02.csv中”,之后用户再输入信息,还是存储在该文本中,进行换行。
一个月进行一次新文本的更新,如何控制用户输入信息和csv文件的格式呢?
例如
”a”,”b”,”c”,”d”,”e”
”1”,”2”,”3”,”4”,”5”
”6”,”7”,”8”,”9”,”0”
我下面写的代码输出的只有“姓名,住所,电话,说明”,如何让用户输入的信息存储在文本中呢?请高手指教,成功之后再加分
<?php
mb_http_output("SJIS");
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename=2009-01.csv");
echo "姓名,住所,电话,说明";
session_start();
$_SESSION['data']=$_POST;
$handle=fopen("2009-01.csv","a+");
$data=join(",",$_SESSION['data']);
fwrite($handle,$data."\r\n");
while($str = fgets($handle)){
$str = fgets($handle);
echo ($str? ",":"");
}
fclose($handle );
?>
我用正则表达式解决问题了,但是如果在用户输入信息的时候输入'单引号的话,用excel打开的时候要求显示这个单引号,例如输入'77用excel显示的时候也是'77我现在用的正则表达式将"和,都过滤掉了,但是用excel显示的时候,对于输入的'77只显示77,请问怎么也能让'也在excel中表示呢?我的正则 $value = preg_replace("/[\"|,]/","",$value);