PHP Класс Horde_Db_SearchParser, horde

Copyright 2004-2016 Horde LLC (http://www.horde.org/) The expression recognizes boolean "AND", "OR", and "NOT" (providing no operator between keywords implies "AND"), like so: cat and dog cat or dog cat and not dog If no operator appears between keywords or quoted strings, "AND" is assumed. A comma can be used instead of "OR": cat dog cat, dog cat not dog The parser recognizes parentheses, so complex expressions can be created: cat and not (dog or puppy) Quoted strings are also recognized, and are taken as literal keywords: "cat and dog" Parsing is designed to be as fuzzy as possible, so it shouldn't error unless people search for "AND", "OR", or "NOT" without quoting it or use unbalanced parentheses.
Автор: Jason M. Felice ([email protected])
Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
parse ( string $column, string $expr ) : string Parses a keyword expression.

Защищенные методы

Метод Описание
_parseKeywords1 ( $column, &$tokens )
_parseKeywords2 ( $column, &$tokens )
_parseKeywords3 ( $column, &$tokens )
_parseKeywords4 ( $column, &$tokens )

Описание методов

_parseKeywords1() защищенный статический Метод

protected static _parseKeywords1 ( $column, &$tokens )

_parseKeywords2() защищенный статический Метод

protected static _parseKeywords2 ( $column, &$tokens )

_parseKeywords3() защищенный статический Метод

protected static _parseKeywords3 ( $column, &$tokens )

_parseKeywords4() защищенный статический Метод

protected static _parseKeywords4 ( $column, &$tokens )

parse() публичный статический Метод

Parses a keyword expression.
public static parse ( string $column, string $expr ) : string
$column string This is the SQL field name the resulting expression should test against.
$expr string This is the keyword expression we want to parse.
Результат string The query expression.