PHP直接输出文件至txt下载(处理中文文件名)

<?php
$text_g="序号\t日期\t名称\t数量\r\n";//使用双引号""方便php将双引号内的\t当成变量输出(\t是Tab制表符 \r\n是换行符,这样输出的文件可以直接复制到excel表格中)

for($i=1;$i<10;$i++){
$text_g.=$i."\t2019-01\t".$i."#零配件\t".($i*$i+10)."\r\n";
}
//第一步:处理中文文件名:
$ua = $_SERVER["HTTP_USER_AGENT"];  
$filename = "下载全部档案.txt"; 
$encoded_filename = urlencode($filename);  
$encoded_filename = str_replace("+", "%20", $encoded_filename);  

//第二步:生成TXT文件:
header("Content-Type: application/octet-stream");  
if (preg_match("/MSIE/", $_SERVER['HTTP_USER_AGENT']) ) {  
    header('Content-Disposition:  attachment; filename="' . $encoded_filename . '"');  
} elseif (preg_match("/Firefox/", $_SERVER['HTTP_USER_AGENT'])) {  
    header('Content-Disposition: attachment; filename*="utf8' .  $filename . '"');  
} else {  
    header('Content-Disposition: attachment; filename="' .  $filename . '"');  
}
//输出内容:直接用echo输出,“\r\n”用以换行。
echo $text_g;

ps:在某次写程序过程中用记事本新建了个txt文件重命名后缀为.php后,发现该php文件无法执行<?php …… ?>内的程序浪费了快半个小时时间!如果遇到php文件不执行,可能是你的.php文件权限不对,可以复制一个正常的php文件重命名后将内容修改就OK了!

基于互联网精神,在注明出处的前提下本站文章可自由转载!

本文链接:https://ranjuan.cn/php直接输出文件至txt下载(处理中文文件名)/

赞赏

微信赞赏支付宝赞赏

发表评论