php 用header()读写csv文件方法
定义和用法:header() 函数向客户端发送原始的 HTTP 报头,认识到一点很重要,即必须在任何实际的输出被发送之前调用 header() 函数(在 PHP 4 以及更高的版本中,您可以使用输出缓存来解决此问题:
<?php // 结果出错 // 在调用 header() 之前已存在输出 header('Location: http://www.phprm.com/'); ?>
语法:header(string,replace,http_response_code)
参数 描述
string 必需,规定要发送的报头字符串.
replace 可选,指示该报头是否替换之前的报头,或添加第二个报头.
默认是 true(替换),false(允许相同类型的多个报头).
http_response_code 可选,把 HTTP 响应代码强制为指定的值,PHP 4 以及更高版本可用.
1.定义header()头部输出格式
header("Content-type:application/vnd.ms-excel"); //定义输出的文件类型 header("content-Disposition:filename=downloaded.pdf"); //定义输出的文件名,也就是设置一个下载类型,下载的时候对文件从新命名.
<?php header("Content-type:application/vnd.ms-excel"); header("content-Disposition:filename=downloaded.pdf "); echo"1\t 2\t 3\n"; //其中 t 是空白 ,n是回车 (编码规范 不能直接输出) echo"1\t 2\t 3\n"; echo"1\t 2\t 3\n"; ?>
这时候就可以打开这个php文件,就会提示下载,也可以以table表格的方式输出,实例代码如下:
<?php header("Content-type:application/vnd.ms-excel "); header("content-Disposition:filename=downloaded.pdf"); ?> <table> <tr> <td>t00</td><td>t01</td><td>t02</td> </tr> <tr> <td>t10</td><td>t11</td><td>t12</td> </tr> <tr> <td>t20</td><td>t21</td><td>t22</td> </tr> </table>
CSV的写入操作,fputcsv()的使用可参考.
$fp = fopen('f:/file.csv', 'w'); fputcsv($fp,array('aaa','bbb','cccc')); fputcsv($fp,array('mmm','yyy','haha')); //fputcsv()可以用数组循环的方式进行实现 fclose($fp);
本文地址:http://www.phprm.com/develop/fs5346.html
转载随意,但请附上文章地址:-)