PHP过滤HTML标签的函数


PHP #函数 #html2012-10-26 09:39

过滤HTML标签在工作中经常用到,今天分享一个函数。可以把HTML转换为文本。

// 一个 http://yige.org
function yige_text($document) {
	$search = array("'<script[^>]*?>.*?</script>'si",
	"'<style[^>]*?>.*?</style>'si",
	"'<[\/\!]*?[^<>]*?>'si",
	"'([\r\n])[\s]+'",
	"'&(quot|#34|#034|#x22);'i",
	"'&(amp|#38|#038|#x26);'i",
	"'&(lt|#60|#060|#x3c);'i",
	"'&(gt|#62|#062|#x3e);'i",
	"'&(nbsp|#160|#xa0);'i",
	"'&(iexcl|#161);'i",
	"'&(cent|#162);'i",
	"'&(pound|#163);'i",
	"'&(copy|#169);'i",
	"'&(reg|#174);'i",
	"'&(deg|#176);'i",
	"'&(#39|#039|#x27);'",
	"'&(euro|#8364);'i",
	"'&a(uml|UML);'",
	"'&o(uml|UML);'",
	"'&u(uml|UML);'",
	"'&A(uml|UML);'",
	"'&O(uml|UML);'",
	"'&U(uml|UML);'",
	"'ß'i",
	);
	$replace = array("",
	"",
	"",
	"\\1",
	"\"",
	"&",
	"<",
	">",
	" ",
	chr(161),
	chr(162),
	chr(163),
	chr(169),
	chr(174),
	chr(176),
	chr(39),
	chr(128),
	"?",
	"?",
	"?",
	"?",
	"?",
	"?",
	"?",
	);

	$text = preg_replace($search, $replace, $document);

	return $text;
}


相关文章

粤ICP备11097351号-1