<?php class Logic_BlackWord { const APP_FORUM = 1; const APP_BLOG = 2; const APP_VOTE = 3; public function getHitList($txt) { $hitList = array(); $max = $this->getMax(); if($max) { $size = 1000; $last = ceil($max/$size); for($page=1;$page<=$last;$page++) { $result = $this->getHitListByPage($txt,$page,$size); if($result) $hitList = array_merge($hitList,$result); } } $hitList2 = array(); foreach($hitList as $hit=>$type) { $hitList2[$type][] = $hit; } return $hitList2; }
The sensitive word replacement algorithm of this class library is 4 times more efficient than str_replace (6,000 sensitive words attached). This class library was written when I had not studied Trie trees. After that, I came into contact with the AC algorithm. The algorithm has a similar structure and logic to AC. They both use trees to exchange space for time, which is very helpful for searching/replacing massive data.
strtr is the representative of the KMP algorithm. It has no advantage in dealing with massive vocabulary, and the vocabulary library must be loaded into the memory every time.
Using the AC algorithm to write extensions and loading the vocabulary into memory is the best way to handle it.
So badword.src.php can be used to learn AC algorithm, learn search and replace, etc.
All resources on this site are contributed by netizens or reprinted by major download sites. Please check the integrity of the software yourself! All resources on this site are for learning reference only. Please do not use them for commercial purposes. Otherwise, you will be responsible for all consequences! If there is any infringement, please contact us to delete it. Contact information: admin@php.cn
Related Article
![How Do I Link Static Libraries That Depend on Other Static Libraries?](https://img.php.cn/upload/article/001/246/273/173408941480807.jpg)
13Dec2024
Linking Static Libraries to Other Static Libraries: A Comprehensive ApproachStatic libraries provide a convenient mechanism to package reusable...
![How to Silence TensorFlow\'s Debugging Output?](https://img.php.cn/upload/article/001/246/273/173013069196898.jpg)
28Oct2024
Suppression of Tensorflow Debugging OutputTensorflow prints extensive information about loaded libraries, found devices, and other debugging data...
![How Does jQuery Simplify DOM Manipulation for Web Developers?](https://img.php.cn/upload/article/001/246/273/173584251998599.jpg)
03Jan2025
Overflow: Hidden and Expansion of HeightjQuery distinguishes itself from other JavaScript libraries through its cross-platform compatibility and...
![Which native Java image processing library is right for you?](https://img.php.cn/upload/article/001/246/273/173023154939075.jpg)
30Oct2024
Native Java Image Processing Libraries for High-Quality ResultsAs you have encountered limitations with ImageMagick and JAI, let's explore other...
![How to Execute Command Line Binaries in Node.js?](https://img.php.cn/upload/article/001/246/273/173525317037962.jpg)
27Dec2024
Executing Command Line Binaries in Node.jsExecuting third-party binaries is an essential task when porting CLI libraries from other languages to...
![How to Create and Utilize Static Libraries in g ?](https://img.php.cn/upload/article/001/246/273/172972563161407.jpg)
24Oct2024
This article guides developers on crafting static libraries in C using g . It demonstrates how to compile source code into object files, create static libraries, and incorporate them into other projects. By leveraging this approach, developers can
![](/static/imghwm/down_right.png)
![](/static/imghwm/taglogo.png)
Hot Tools
![PHP library for dependency injection containers](https://img.php.cn/upload/manual/000/000/001/5e21721e79a2b232.png)
PHP library for dependency injection containers
PHP library for dependency injection containers
A collection of 50 excellent classic PHP algorithms
Classic PHP algorithm, learn excellent ideas and expand your thinking
Small PHP library for optimizing images
Small PHP library for optimizing images
![](/static/imghwm/taglogo.png)