PHP生成TXT文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP生成TXT文件相关的知识,希望对你有一定的参考价值。

<?php
if ($handle = opendir('./txt/'))
while (false !== ($file = readdir($handle)))
if ($file != "." && $file != "..")
echo "$file";


closedir($handle);

>?

将上面的代码的执行结果写入到dir.txt这个文件中,如何实现?

把这页保存起来,比如http://localhost/a.php
然后再另外一页写
<?php
$content = file_get_contents("http://localhost/a.php");//得到文件执行的结果
$of = fopen('dir.txt','w');//创建并打开dir.txt
if($of)
fwrite($of,$content);//把执行文件的结果写入txt文件

fclose($of);
?>
参考技术A <?php
$string="";
if ($handle = opendir('./txt/'))
while (false !== ($file = readdir($handle)))
if ($file != "." && $file != "..")
$string.=$file."\n\r";


closedir($handle);


writedir($string);
>?
大概就这样吧,writedir是自己定义的函数,就是把字符写到文件里去,怎么写文件,查查手册吧,我这里没手册,所有写不了具体的方法
参考技术B file_put_contents('dir.txt',$file); 参考技术C 网上查一下
fwrite

PHP生成TXT文件时乱码

在网上找了一个PHP代码用来统计蜘蛛访问日志,代码如下
<?php
date_default_timezone_set('Asia/Shanghai');

function get_naps_bot()

$useragent = strtolower($_SERVER['HTTP_USER_AGENT']);
if (strpos($useragent, 'baiduspider') !== false)
return 'Baiduspider';


return false;


function nowtime()
$date=date("Y年m月d日 G点i分s秒");

return $date;


$searchbot = get_naps_bot();

if ($searchbot)
$tlc_thispage = addslashes($_SERVER['HTTP_USER_AGENT']);
$url=$_SERVER['HTTP_REFERER'];
$file="logs.txt";
$time=nowtime();
$data=fopen($file,"a");
fwrite($data,"Time:$time robot:$searchbot URL:$tlc_thispage\n");
fclose($data);

?>
现在问题是TXT日志能够正常生成,但是中文输出却是乱码
Time:2011骞?3链?5镞?12镣?4鍒?0绉?robot:Baiduspider
能不能强制定义PHP输出字符为utf8格式?

参考技术A 编码问题
把 $time 的编码转换一下
即 把 $time=nowtime(); 改成 $time=iconv('utf-8','gbk', nowtime());本回答被提问者采纳
参考技术B 直接用此即可:
header("Content-type: text/html; charset=utf-8");在开头
参考技术C header("Content-type: text/html; charset=UTF-8"); 页面头部加上试试。追问

试过了,但是不行,仍然显示错误,郁闷的是把txt拿到本地看的话又是正常的。

追答

就是说,txt文件没有乱码,但显示不出来吗?

追问

生成的TXT在网页上看起来就是乱码,取回本地看就是正常。

追答

读取txt文件的页面有没有编码定义?

类似这样的。

另外看下,txt的文件是utf-8还是ansi的。

以上是关于PHP生成TXT文件的主要内容,如果未能解决你的问题,请参考以下文章

PHP 如何生成编码为Unicode的txt文件

PHP生成TXT文件时乱码

php把生成的文件存放在指定目录

windows下PHP批量生成打包android程序APK-渠道txt植入apk文件

在 txt 文件 Linux 命令行上显示 php 输出

在 .txt 文件中查找并替换 pdftotext 生成的图像字符