Skip to content

About

Snowball (libstemmer) bindings for PHP

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

coral-media/php-snowball (PHP extension)

Minimal PECL-style scaffold for a Snowball (libstemmer) extension with vendored sources.

Install using PIE

From sources

pie install --with-snowball

From Packagist

pie install coral-media/php-snowball --with-snowball

Further info PIE official repository

Build (from source)

phpize
./configure --with-snowball
make -j"$(nproc)"
make install

Windows support

Check the releases page. Download the compatible asset with your PHP version and make sure you load the extension in php.ini.

Usage

Basic stemming (defaults to English + UTF_8):

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

Explicit language + encoding:

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

Batch stemming for arrays (more efficient than looping in PHP):

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

Documentation

Notes

  • Vendored libstemmer sources live under lib/libstemmer.
  • If PIE install or building from source fails with 'make' '-j10'" failed try --make-parallel-jobs 1. Same procedure with make -j if building from sources. Adjust to any convenient value.

About

Snowball (libstemmer) bindings for PHP

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages