romeoz / rock-sphinx
Object Relational Mapping (ORM) for Sphinx Search.
0.14.0
2015-11-09 04:07 UTC
Requires
- php: >=5.4.0
- romeoz/rock-db: 0.15.*
Requires (Dev)
- phpunit/phpunit: ^4.7.0
- romeoz/rock-cache: 0.15.*
- romeoz/rock-dataprovider: 0.11.*
- romeoz/rock-sanitize: 0.11.*
- romeoz/rock-validate: 0.12.*
Suggests
- romeoz/rock-behaviors: required for using behaviors a model
- romeoz/rock-cache: required for caching queries
- romeoz/rock-dataprovider: required for Data provider
- romeoz/rock-sanitize: required for sanitization rules a model
- romeoz/rock-validate: required for validation rules a model
This package is not auto-updated.
Last update: 2024-11-05 04:06:36 UTC
README
This API Sphinx full text search engine, which uses SphinxQL.
Independent fork by Yii2 Sphinx Search 2.0.4.
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.