>  기사  >  백엔드 개발  >  ucenter의 단어 필터링 원리에 대한 자세한 설명

ucenter의 단어 필터링 원리에 대한 자세한 설명

*文
*文원래의
2017-12-29 18:15:401613검색

이 글에서는 ucenter의 단어 필터링 원리를 주로 소개하고, 관련 SQL 필드 정의와 ucenter의 단어 필터링 기능을 예제로 분석합니다. 여기에는 문자열 및 배열 관련 연산 기술이 포함됩니다. 다운을 참고하시면 됩니다. 그것이 모두에게 도움이 되기를 바랍니다.

이 글은 ucenter의 단어 필터링 원리를 분석한 것입니다. 참조를 위해 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

idadminfindreplacementfindpattern1UCenterAdminist 방문좋아요 /visit/is2UCenterAdminist465545/4655/is3UCenterAdministfdsaf dfsa/fdsaf/is 4UCenterAdministopportunity in /opportunity/is캐시 데이터 구성:

//private
function _get_badwords() {
  $data = $this->db->fetch_all("SELECT * FROM ".UC_DBTABLEPRE."badwords");
  $return = array();
  if(is_array($data)) {
    foreach($data as $k => $v) {
      $return['findpattern'][$k] = $v['findpattern'];
      $return['replace'][$k] = $v['replacement'];
    }
  }
  return $return;
}
호출 방법:

$_CACHE['badwords'] = $this->base->cache('badwords');
if($_CACHE['badwords']['findpattern']) {
  $subject = @preg_replace($_CACHE['badwords']['findpattern'], $_CACHE['badwords']['replace'], $subject);
  $message = @preg_replace($_CACHE['badwords']['findpattern'], $_CACHE['badwords']['replace'], $message);
}
preg_replace() 각 매개변수에 대해(제외 Limit )은 배열일 수 있습니다. 패턴과 교체가 모두 배열인 경우 해당 키는 배열에 나타나는 순서대로 처리됩니다. 이는 인덱스의 숫자 순서와 반드시 동일할 필요는 없습니다. 어떤 패턴이 어떤 교체로 대체되는지 식별하기 위해 인덱스가 사용되는 경우 preg_replace()를 호출하기 전에 배열을 ksort()로 정렬해야 합니다.

관련 권장 사항:

PHP는 텍스트 기반 모스 부호를 생성합니다.

php 텍스트 교체는 지정된 시간

php는 반복되는 줄이 있는 텍스트 문서를 처리합니다.

위 내용은 ucenter의 단어 필터링 원리에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.