本文整理汇总了PHP中zmf::badWordsReplace方法的典型用法代码示例。如果您正苦于以下问题:PHP zmf::badWordsReplace方法的具体用法?PHP zmf::badWordsReplace怎么用?PHP zmf::badWordsReplace使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类zmf
的用法示例。
在下文中一共展示了zmf::badWordsReplace方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: handleContent
/**
* 处理内容
* @param type $content
* @return type
*/
public static function handleContent($content)
{
$pattern = "/<[img|IMG].*?data=[\\'|\"](.*?)[\\'|\"].*?[\\/]?>/i";
preg_match_all($pattern, $content, $match);
$arr_attachids = array();
if (!empty($match[0])) {
$arr = array();
foreach ($match[0] as $key => $val) {
$_key = $match[1][$key];
$arr[$_key] = $val;
$arr_attachids[] = $match[1][$key];
}
if (!empty($arr)) {
foreach ($arr as $thekey => $imgsrc) {
$content = str_ireplace("{$imgsrc}", '[attach]' . $thekey . '[/attach]', $content);
}
}
}
$content = strip_tags($content, '<b><strong><em><span><a><p><u><i><img><br><br/>');
$replace = array('/<a.*?href="(.*?)".*?>(.+?)<\\/a>/ie', '/(((http|https):\\/\\/)[a-z0-9;&#@=_~%\\?\\/\\.\\,\\+\\-\\!\\:]+)/ie', "/style=\"[^\"]*?\"/i");
$to = array("self::autoUrl('\\1','\\2')", "self::textUrl('\\1')", '');
$content = preg_replace($replace, $to, $content);
if (zmf::config('checkBadWords')) {
$h_style = zmf::config("badwordsHandleStyle");
//仅过滤
if ($h_style === 'filter') {
$content = zmf::badWordsReplace($content);
//仅通知 过滤通知
} elseif ($h_style === 'notice' or $h_style === 'filterNotice') {
$status = Yii::app()->session['checkHasBadword'];
if ($status != 'yes') {
$keywords = zmf::getBadwords();
foreach ($keywords as $word) {
if (mb_strpos($content, $word) !== false) {
Yii::app()->session['checkHasBadword'] = 'yes';
}
}
}
if ($h_style === 'filterNotice') {
$content = zmf::badWordsReplace($content);
}
}
}
$data = array('content' => $content, 'attachids' => $arr_attachids);
return $data;
}