PHPackages                             karelwintersky/arris.toolkit.sphinxql-pdo-wrapper - 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. [Database &amp; ORM](/categories/database)
4. /
5. karelwintersky/arris.toolkit.sphinxql-pdo-wrapper

ActiveLibrary[Database &amp; ORM](/categories/database)

karelwintersky/arris.toolkit.sphinxql-pdo-wrapper
=================================================

Arris µFramework SphinxQL PDO Wrapper

1.0.0(1y ago)026[1 issues](https://github.com/ArrisFramework/SphinxQL.PDO.Wrapper/issues)MITPHPPHP ^8.2

Since Sep 10Pushed 1y ago1 watchersCompare

[ Source](https://github.com/ArrisFramework/SphinxQL.PDO.Wrapper)[ Packagist](https://packagist.org/packages/karelwintersky/arris.toolkit.sphinxql-pdo-wrapper)[ RSS](/packages/karelwintersky-arristoolkitsphinxql-pdo-wrapper/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (2)Dependencies (1)Versions (3)Used By (0)

Arris µFramework SphinxQL PDO Wrapper
=====================================

[](#arris-µframework-sphinxql-pdo-wrapper)

```
use \Arris\Toolkit\SphinxQL\PDOWrapper;

$mysql_connection = new \Arris\Database\DBWrapper([
    'driver'    =>  'mysql',
    'hostname'  =>  getenv('DB.HOST'),
    'username'  =>  getenv('DB.USERNAME'),
    'password'  =>  getenv('DB.PASSWORD'),
    'database'  =>  getenv('DB.NAME'),
    'charset'   =>  'utf8',
    'charset_collate'   =>  'utf8_general_ci',
    'slow_query_threshold'  => 1
]);

$sphinx_connection = new \Arris\Database\DBWrapper([
    'driver'            =>  'mysql',
    'hostname'          =>  getenv('SEARCH.HOST'),
    'database'          =>  NULL,
    'username'          =>  getenv('SEARCH.USER'),
    'password'          =>  getenv('SEARCH.PASSWORD'),
    'port'              =>  getenv('SEARCH.PORT'),
    'charset'           =>  NULL,
    'charset_collate'   =>  NULL
]);

// или через Arris\Database\Connector()

$toolkit = new PDOWrapper($mysql_connection, $sphinx_connection);
$toolkit->setRebuildIndexOptions([
    'log_rows_inside_chunk' =>  false,
    'log_after_chunk'       =>  false,
    'sleep_after_chunk'     =>  $options['is_sleep'],
    'sleep_time'            =>  $options['sleeptime'],
    'chunk_length'          =>  $options['sql_limit']
]);
$toolkit->setConsoleMessenger([ \Arris\Toolkit\CLIConsole::class, "say" ]);

$rt_index = getenv('SEARCH.RT_INDEX.ARTICLES');
if ($rt_index) {
    // статьи
    $count_rebuilt['articles'] =
        $toolkit->rebuildAbstractIndex(
            'articles',
            $rt_index,
            static function ($item) {
                return \FSNews\SearchEngine::prepare_RTArticle($item, true);
            },
            " s_draft = 0 ",
            true,
            ['rubrics', 'districts']
        );
} else {
    CLIConsole::say("[SEARCH.RT_INDEX.ARTICLES] disabled");
}
```

ToDo
====

[](#todo)

Добавить

```
    /**
     * @param $connection
     * @param $index
     * @return false|\PDOStatement
     */
    public static function RTIndexOptimize($connection, $index)
    {
        $query = "OPTIMIZE INDEX {$index}";
        return $connection->query($query);
    }

    /**
     * @param $connection
     * @param $index
     * @param bool $reconfigure
     * @return bool
     */
    public static function RTIndexTruncate($connection, $index, bool $reconfigure = true): bool
    {
        $with = $reconfigure ? 'WITH RECONFIGURE' : '';
        return (bool)$connection->query("TRUNCATE RTINDEX {$index} {$with}");
    }

        /**
     * @param $connection
     * @param $index
     * @return bool
     */
    public static function RTIndexCheckExist($connection, $index)
    {
        $index_definition = $connection->query("SHOW TABLES LIKE '{$index}' ")->fetchAll();

        return \count($index_definition) > 0;
    }

    // +show meta
    // +show version
```

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance50

Moderate activity, may be stable

Popularity6

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

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.

###  Release Activity

Cadence

Every ~294 days

Total

2

Last Release

366d ago

Major Versions

0.99.1 → 1.0.02025-07-01

PHP version history (2 changes)0.99.1PHP ^7.4 | 8.\*

1.0.0PHP ^8.2

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/2164874?v=4)[Karel Wintersky](/maintainers/KarelWintersky)[@KarelWintersky](https://github.com/KarelWintersky)

---

Tags

arrismanticoresearchpdo-wrappersearchdpdosphinxmanticoresearchmanticorearris

### Embed Badge

![Health badge](/badges/karelwintersky-arristoolkitsphinxql-pdo-wrapper/health.svg)

```
[![Health](https://phpackages.com/badges/karelwintersky-arristoolkitsphinxql-pdo-wrapper/health.svg)](https://phpackages.com/packages/karelwintersky-arristoolkitsphinxql-pdo-wrapper)
```

###  Alternatives

[doctrine/dbal

Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.

9.7k605.0M6.8k](/packages/doctrine-dbal)[matomo/matomo

Matomo is the leading Free/Libre open analytics platform

21.7k38.9k](/packages/matomo-matomo)[kimai/kimai

Kimai - Time Tracking

4.8k9.0k1](/packages/kimai-kimai)[cycle/database

DBAL, schema introspection, migration and pagination

71777.8k53](/packages/cycle-database)[perplorm/perpl

Perpl is an improved and still maintained fork of Propel2, an open-source Object-Relational Mapping (ORM) for PHP.

2411.8k](/packages/perplorm-perpl)[tommyknocker/pdo-database-class

Framework-agnostic PHP database library with unified API for MySQL, MariaDB, PostgreSQL, SQLite, MSSQL, and Oracle. Query Builder, caching, sharding, window functions, CTEs, JSON, migrations, ActiveRecord, CLI tools, AI-powered analysis. Zero external dependencies.

846.1k](/packages/tommyknocker-pdo-database-class)

PHPackages © 2026

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