PHPackages                             jipipayo/sphinx-config-builder - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Search &amp; Filtering](/categories/search)
4. /
5. jipipayo/sphinx-config-builder

ActiveLibrary[Search &amp; Filtering](/categories/search)

jipipayo/sphinx-config-builder
==============================

A php class to build the sphinx search configuration file dynamically.

016PHP

Since Feb 2Pushed 11y ago1 watchersCompare

[ Source](https://github.com/jipipayo/SphinxConfigBuilder)[ Packagist](https://packagist.org/packages/jipipayo/sphinx-config-builder)[ RSS](/packages/jipipayo-sphinx-config-builder/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

SphinxConfigBuilder
===================

[](#sphinxconfigbuilder)

A php class to build the sphinx search configuration file dynamically from php.

### Why this class?

[](#why-this-class)

Sphinx search () usually works well with a simple plain text file with the configuration data used by searchd and indexer. But sometimes in big projects you have to handle with this file that starts to grow, and run in different machines or environments. You finally duplicate this file and loosing the control of the real state of this changes.

Readed this tweet and gave me the idea to pass a file on the fly as configuration:

With SphinxConfiguratorBuilder you create sphinx configurations dinamically: differents db confs, dev environment or prod, automatize, add to CI flows, smoke tests, etc...

### Install

[](#install)

You can install with composer: Simply add this line to your composer.json (required section): ```
    "jipipayo/sphinx-config-builder": "dev-master"

```

update your composer modules in your project:

```
composer update

```

this will download and install this class and you are ready to start to use it.

### How to use it?

[](#how-to-use-it)

Open the file config\_sample.php, you will see a sample use case, modify this file and save it as sphinx\_config.php (or other name) add the SphinxConfiguratorBuilder to your project path.

Do not forget to start your sphinx\_config.php file with the shebang as shown in the config\_sample.php file:

```
#!/usr/bin/env  php

```

now simply run:

```
indexer --config /path/to/config_sample.php --all --rotate

```

or

```
searchd --config /absolute/path/to/config_sample.php

```

if you make a symlink like this:

```
    ln -s /absolute/path/to/config_sample.php /usr/local/etc/sphinx.conf

```

now you will be able to use indexer and searchd without --config path (sphinx now takes the default /usr/local/etc/sphinx.conf)

```
    indexer  --all --rotate

```

Inspired by this cpan module in perl :

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/6d3dfa92be9d3da7d14c3f433e3f9d0d2a0051832b131aa0cbfddf83c4601b5f?d=identicon)[jipipayo](/maintainers/jipipayo)

---

Top Contributors

[![jipipayo](https://avatars.githubusercontent.com/u/1165?v=4)](https://github.com/jipipayo "jipipayo (15 commits)")

### Embed Badge

![Health badge](/badges/jipipayo-sphinx-config-builder/health.svg)

```
[![Health](https://phpackages.com/badges/jipipayo-sphinx-config-builder/health.svg)](https://phpackages.com/packages/jipipayo-sphinx-config-builder)
```

###  Alternatives

[ruflin/elastica

Elasticsearch Client

2.3k50.4M202](/packages/ruflin-elastica)[opensearch-project/opensearch-php

PHP Client for OpenSearch

15024.3M64](/packages/opensearch-project-opensearch-php)[mailerlite/laravel-elasticsearch

An easy way to use the official PHP ElasticSearch client in your Laravel applications.

934529.3k2](/packages/mailerlite-laravel-elasticsearch)[massive/search-bundle

Massive Search Bundle

721.4M13](/packages/massive-search-bundle)[shyim/opensearch-php-dsl

OpenSearch/Elasticsearch DSL library

175.9M9](/packages/shyim-opensearch-php-dsl)[outl1ne/nova-multiselect-filter

Multiselect filter for Laravel Nova.

45802.7k3](/packages/outl1ne-nova-multiselect-filter)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
