php将HTML转换为txt文本的函数
利用php的preg_replace函数对html中的标记进行替换。
function html2text($str,$encode = 'GB2312')
{
$str = preg_replace("/<style .*?</style>/is", "", $str);
$str = preg_replace("/<script .*?</script>/is", "", $str);
$str = preg_replace("/<br s*/?/>/i", "n", $str);
$str = preg_replace("/</?p>/i", "nn", $str);
$str = preg_replace("/</?td>/i", "n", $str);
$str = preg_replace("/</?div>/i", "n", $str);
$str = preg_replace("/</?blockquote>/i", "n", $str);
$str = preg_replace("/</?li>/i", "n", $str);
$str = preg_replace("/ /i", " ", $str);
$str = preg_replace("/ /i", " ", $str);
$str = preg_replace("/&/i", "&", $str);
$str = preg_replace("/&/i", "&", $str);
$str = preg_replace("/</i", "<", $str);
$str = preg_replace("/</i", "<", $str);
$str = preg_replace("/“/i", '"', $str);
$str = preg_replace("/&ldquo/i", '"', $str);
$str = preg_replace("/‘/i", "'", $str);
$str = preg_replace("/&lsquo/i", "'", $str);
$str = preg_replace("/’/i", "'", $str);
$str = preg_replace("/&rsquo/i", "'", $str);
$str = preg_replace("/>/i", ">", $str);
$str = preg_replace("/>/i", ">", $str);
$str = preg_replace("/”/i", '"', $str);
$str = preg_replace("/&rdquo/i", '"', $str);
$str = strip_tags($str);
$str = html_entity_decode($str, ENT_QUOTES, $encode);
$str = preg_replace("/&#.*?;/i", "", $str);
return $str;
}
有点相关的文章
- PHP 正则表达式 (0.722)
- PHP 截取字符串专题 (0.722)
- PHP中文件读写操作 (0.639)
- php写入、删除、复制文件例子 (0.639)
- 用PHP判断顶级域名 (0.639)
- Perl closedir函数 (RANDOM - 0.500)
重新回来看这段代码,好奇怪~~
用strip_tags函数更加好啊 :db:
嗯 我想也是这样的
php好难