Инструменты пользователя

Инструменты сайта


software:development:demo:cms:ucms:appendix:appendix_php_stemmer

php-snowball

Стемминг сопоставляет различные формы одного и того же слова с общей «основой» — например, английский стеммер сопоставляет connection , connections , connective , connected и connecting со словом connect . Таким образом, поиск слова connected также найдет документы, содержащие только другие формы.

PHP Snowball (нативное расширение PHP)

Расширение для PHP, обеспечивающее привязку к реализации Snowball на языке C. Расширение напрямую предоставляет доступ к стеммерам Snowball для PHP с минимальными накладными расходами и разработано для современных сред выполнения PHP. Совместимо с версиями PHP ≥ 8.1.

Распространяется с помощью PIE , установщика расширений PHP нового поколения. Пользователи Windows могут загрузить предварительно скомпилированное расширение со страницы релизов.

#bash
pie install coral-media/php-snowball

Исходный код: https://github.com/coral-media/php-snowball

coral-media/php-snowball (расширение для PHP)

Минимальная структура в стиле PECL для расширения Snowball (libstemmer) с использованием встроенных исходных кодов.

Использование

Базовая стемминг (по умолчанию используется кодировка English + UTF_8):

index.php
<?php
echo snowball_stem('running'); // run

Явный язык + кодировка:

index.php
<?php
echo snowball_stem('corriendo', SNOWBALL_LANG_ES, SNOWBALL_ENCODING_UTF_8); // corr

Пакетная обработка массивов (эффективнее, чем циклы в PHP):

index.php
<?php
$words = ['running', 'jumps'];
print_r(snowball_stem_array($words)); // ['run', 'jump']

Документация

Примечания

Исходный код библиотеки libstemmer, предоставляемой поставщиком, находится в папке lib/libstemmer.

Дополнения и Файлы

Только авторизованные участники могут оставлять комментарии.
software/development/demo/cms/ucms/appendix/appendix_php_stemmer.txt · Последнее изменение: VladPolskiy

Если не указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki