spekulatius / keyword-merge
A helper to compare and merge similar keywords using PHP.
3.0
2022-03-17 23:44 UTC
Requires
- php: ^7.2|^8.0
- ext-mbstring: *
Requires (Dev)
- phpunit/phpunit: ^8.5
- symfony/thanks: *
Suggests
- spekulatius/phpscraper: Make your life easier accessing the web from PHP.
Provides
None
Conflicts
None
Replaces
None
README
An helper to compare similarity of keywords or list of keyword.
You will still need to a make a final call which helper(s) to use and how to configure them.
This package is intended to be used with PHPScraper.
Sponsors
This project is sponsored by:
Want to sponsor this project? Contact me.
Install
composer require spekulatius/keyword-merge
At a glance
Here are a few impressions on the way the library works:
$kwcmp = new Spekulatius\KeywordMerge\KeywordComparator; $kwcmp->matchesWord('tbilisi georgia', 'is tbilisi the capital of georgia?'); // false $kwcmp->containsWord('tbilisi georgia', 'is tbilisi the capital of georgia?'); // true $kwcmp->similarWord('tbilisi georgia', 'georgias tbilisi'); // true
You call also use arrays with correlated methods:
$kwcmp = new Spekulatius\KeywordMerge\KeywordComparator; $kwcmp->matchesWords('tbilisi georgia', 'is tbilisi the capital of georgia?'); // [] $kwcmp->containsWords('tbilisi georgia', 'is tbilisi the capital of georgia?'); // ['is tbilisi the capital of georgia?'] $kwcmp->similarWords('tbilisi georgia', 'georgias tbilisi'); // ['georgias tbilisi']
Keywords in URL Path
The library can also test for keywords in the URL path:
$kwcmp = new Spekulatius\KeywordMerge\KeywordComparator; $kwcmp->inUrlPath('https://example.com/cats-are-awesome', 'seo tools'); // false $kwcmp->inUrlPath('https://example.com/seo-tools', 'seo tools'); // true $kwcmp->inUrlPath('https://example.com/chrome-seo-tools', 'chrome seo tools and toolkit'); // true - one word difference is accepted, from 3+ words
Further example and cases can be found in the tests!