2017 © Pedro PelĂĄez
 

libary badwords

Badwords PHP is a small lightweight PHP library for detecting 'bad' words, e.g. profanity, in content.

image

mioga-technik/badwords

Badwords PHP is a small lightweight PHP library for detecting 'bad' words, e.g. profanity, in content.

  • Monday, November 6, 2017
  • by mioga-technik
  • Repository
  • 0 Watchers
  • 1 Stars
  • 8 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

Badwords PHP

Badwords PHP is small lightweight PHP library for detecting "bad" words, e.g. profanity, in content., (*1)

Aside from the obvious matching if a word is present in a string, the filter also tries to detect words similar to those in the list, e.g. gl@d and glad., (*2)

The library is designed to be highly configurable, from the word lists used to the character replacement configuration at the heart of the filter., (*3)

Note: At present the default configuration provided is not a bulletproof/catch-all solution, but it will catch most variations. This will become more robust over time., (*4)

Requirements

  • The library is only supported on PHP 5.3.0 and up.
  • Composer is required.

Installation

To install include it in your projects's composer.json., (*5)

    $ composer require mioga-brian/badwords-php
    $ composer update

There are no additional dependencies required for this package to work., (*6)

Usage

File Method:

The simplest way to use the library is as follows,, (*7)

    $dictionary = new \Badword\Dictionary\Php('path/to/dictionary_list.php');
    $config = new \Badword\Filter\Config\Standard();
    $filter = new \Badword\Filter($dictionary, $config);

    $result = $filter->filter('My content...');
    $result->getRiskLevel();
    $result->getMatches();
    $result->getMatchesAndRiskLevels();
    $result->getHighlightedContent();

Explained,, (*8)

  • First load your list of "bad" words using the Dictionary objects, or create your own and implement the Dictionary interface.
  • Define a configuration for the filter to use (a default Standard configuration is provided).
  • Create the Filter passing your dictionary(s) and config.
  • Filter your content using the filter() method.
  • Use the Result object to analyse your content.

Array Method:

    // An example moderate dictionary.
    $dictionaryWords = array(
        'some',
        'bad',
        'words'
    );

    $dictionary = new \Badword\Dictionary\PhpArray($dictionaryWords, 1);
    $config = new \Badword\Filter\Config\Standard();
    $filter = new \Badword\Filter($dictionary, $config);

    $result = $filter->filter('My content...');
    $result->getRiskLevel();
    $result->getMatches();
    $result->getMatchesAndRiskLevels();
    $result->getHighlightedContent();

Object Layer Method [new]:

   $dictionaryWords = array(
        'reject' => array(
            'maecenas',
            'mauris',
            'luctus'
        ),
        'moderate' => array(
            'consectetur',
            'neque',
            'velit'
        )
   );

   $Badwords = new \Badword\Badwords($dictionaryWords);

   $result = $Badwords->Filter()->filter('My content...'));
   $result->getRiskLevel();
   $result->getMatches();
   $result->getMatchesAndRiskLevels();
   $result->getHighlightedContent();

Testing

To run the unit tests on this package, simply run vendor/bin/phpunit from the package directory., (*9)

Credits

The Versions

06/11 2017

dev-master

9999999-dev

Badwords PHP is a small lightweight PHP library for detecting 'bad' words, e.g. profanity, in content.

  Sources   Download

MIT

The Requires

  • php >=5.3

 

The Development Requires

by mioga-brian
by stephenmelrose

badwords