romeoz/rock-sphinx

Object Relational Mapping (ORM) for Sphinx Search.

0.14.0 2015-11-09 04:07 UTC

This package is not auto-updated.

Last update: 2024-11-19 04:23:51 UTC


README

This API Sphinx full text search engine, which uses SphinxQL.

Independent fork by Yii2 Sphinx Search 2.0.4.

Latest Stable Version Total Downloads Build Status HHVM Status Coverage Status License

Features

  • Query Builder/DBAL/DAO: Querying the database using a simple abstraction layer
  • Active Record: The Active Record ORM, retrieving and manipulating records, and defining relations
  • Support Runtime Indexes
  • Call Snippets
  • Behaviors (TimestampBehavior,...)
  • Data Provider
  • Validation and Sanitization rules for AR (Model)
  • Query Caching
  • Standalone module/component for Rock Framework

Bolded features are different from Yii2 Sphinx Search.

Installation

From the Command Line:

composer require romeoz/rock-sphinx

In your composer.json:

{
    "require": {
        "romeoz/rock-sphinx": "*"
    }
}

Quick Start

####Query Builder

$rows =  (new \rock\sphinx\Query)
    ->from('items_idx')
    ->match($_POST['search'])
    ->all();

####Active Record

// find
$users = ItemsIndex::find()
    ->match($_POST['search'])
    ->all();
    
// insert to runtime index
$record = new RuntimeIndex;
$record->id = 15;
$record->name = 'Tom';
$users ->save();    

Documentation

  • Basic: Connecting to a database, basic queries, query builder, and Active Record
  • Data Providers

Requirements

  • PHP 5.4+
  • For validation rules a model required Rock Validate: composer require romeoz/rock-validate
  • For sanitization rules a model required Rock Sanitize: composer require romeoz/rock-sanitize
  • For using behaviors a model required Rock Behaviors: composer require romeoz/rock-behaviors
  • For using Data Provider required Rock Data Provider: composer require romeoz/rock-dataprovider
  • For caching queries required Rock Cache: composer require romeoz/rock-cache

All unbolded dependencies is optional.

License

The Object Relational Mapping (ORM) for Sphinx Search is open-sourced software licensed under the MIT license.