替换关键词并过滤特殊标签

Posted jenqz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了替换关键词并过滤特殊标签相关的知识,希望对你有一定的参考价值。

	public static function parse_related_link($content, $extent) {
		global $_G;
		loadcache(‘relatedlink‘);
		$allextent = array(‘article‘ => 0, ‘forum‘ => 1, ‘group‘ => 2, ‘blog‘ => 3);
		if($_G[‘cache‘][‘relatedlink‘] && isset($allextent[$extent])) {
			$searcharray = $replacearray = array();
			foreach($_G[‘cache‘][‘relatedlink‘] as $link) {
				$link[‘extent‘] = sprintf(‘%04b‘, $link[‘extent‘]);
				if($link[‘extent‘][$allextent[$extent]] && $link[‘name‘] && $link[‘url‘]) {
					$searcharray[$link[name]] = ‘/(‘.preg_quote($link[‘name‘]).‘)/i‘;
					$replacearray[$link[name]] = "<a href=\"$link[url]\" target=\"_blank\" class=\"relatedlink\">$link[name]</a>";
				}
			}
			if($searcharray && $replacearray) {
				$_G[‘trunsform_tmp‘] = array();
				$content = preg_replace("/(<script\s+.*?>.*?<\/script>)|(<a\s+.*?>.*?<\/a>)|(<img\s+.*?[\/]?>)|(\[attach\](\d+)\[\/attach\])/ies", "helper_seo::base64_transform(‘encode‘, ‘<relatedlink>‘, ‘\\1\\2\\3\\4‘, ‘</relatedlink>‘)", $content);
				$content = preg_replace($searcharray, $replacearray, $content, 1);
				$content = preg_replace("/<relatedlink>(.*?)<\/relatedlink>/ies", "helper_seo::base64_transform(‘decode‘, ‘‘, ‘\\1‘, ‘‘)", $content);
			}
		}
		return $content;
	}

  上面是discuz的实现

以上是关于替换关键词并过滤特殊标签的主要内容,如果未能解决你的问题,请参考以下文章

php怎样过滤掉特殊字符啊 ☺

除非被特定标签包围,否则替换字符

在ckeditor中的Deled特殊标签

分享前端开发常用代码片段

如何用js或则jquery过滤特殊字符

收藏|分享前端开发常用代码片段