Linguist is a PHP library for parsing strings, it can extract and manipulate prefixed words in content ideal for working with @mentions, #topics and custom tags!
- PHP >= 7.3.0
This library is unit tested against PHP 7.3, 7.4, 8.0, 8.1 and 8.2!
If you need to use an older version of PHP, you should instead install the 1.x version of this library (see below for details).
This library is released under the GPLv3 license, you are welcome to use it, improve it and contribute your changes back!
The recommended way of installing this library is via. Composer; To install using Composer type the following command at the console:
composer require ballen/linguist
If you need to use an older version of PHP, version 1.x.x supports PHP 5.6, 7.0, 7.1 and 7.2, you can install this version using Composer with this command instead:
composer require ballen/linguist ^1.0
A set of working examples can be found in the /examples
directory.
This library is fully unit tested using PHPUnit.
I use GitHub Actions for continuous integration, which triggers tests for PHP 7.3, 7.4, 8.0, 8.1 and 8.2 every time a commit is pushed.
If you wish to run the tests yourself you should run the following:
# Install the Linguist Library with the 'development' packages this then includes PHPUnit!
composer install
# Now we run the unit tests (from the root of the project) like so:
./vendor/bin/phpunit
Code coverage can also be run but requires XDebug installed...
./vendor/bin/phpunit --coverage-html ./report
I am happy to provide support via. my personal email address, so if you need a hand drop me an email at: ballen@bobbyallen.me.