Heim  >  Artikel  >  Backend-Entwicklung  >  php把html批量转换成txt文件

php把html批量转换成txt文件

WBOY
WBOYOriginal
2016-07-25 08:53:37971Durchsuche
  1. function html2text($str){
  2. $str = preg_replace("/
复制代码

第二步:把文件夹下的所有html文件转为txt文件

  1. //要读取的目录
  2. $folder='e:\apmserv\www\htdocs\tool\html-to-txt\files';
  3. //打开目录
  4. $fp=opendir($folder);
  5. //阅读目录
  6. while (($file = readdir($fp)) !== false){
  7. $filetype = substr ( $file, strripos ( $file, "." ) + 1 );
  8. $filename=substr($file,0,strrpos($file,'.'));
  9. if($file!='.' &&$file!='..'&&$filetype == "html"){
  10. echo $filename.'
    ';
  11. $content=file_get_contents("$folder/$file");
  12. //打开文件
  13. $op = fopen("$folder/$filename.txt", 'a');
  14. //写入文件
  15. fwrite($op,html2text($content));
  16. //关闭文件
  17. fclose($op);
  18. //删除html文件
  19. unlink("$folder/$file");
  20. }
  21. }
  22. //关闭目录
  23. closedir($fp);
  24. ?>
复制代码

补充知识点:html转txt小技巧 把
替换成换行,如果
已经是行末,那么把
替换成\n会变成2个换行,也就是说会空一行。但是我们希望出现
只是换行,只有出现

才是空一行,该怎么办呢? 其实只要在替换之前多一个步骤,把 \n和\r都替换为空,即 \n|\r 替换为空,之后再去做html标签的替换,就不会出现这些问题了。 也许有人会问,为什么既要替换\n又要替换\r呢 \n代表换行,\r代表回车,在txt文本中这两种形式都有可能存在,这是我工作中所总结的,肯定不会错! 该知识点中提到的在本案例中已经融进去了,不用担心html替换txt出现什么问题。


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn