2017 © Pedro Peláez
 

library query-text-parser

The Query Text Parser library performs search query text parsing

image

engage/query-text-parser

The Query Text Parser library performs search query text parsing

  • Tuesday, February 25, 2014
  • by MiniCodeMonkey
  • Repository
  • 6 Watchers
  • 8 Stars
  • 3,709 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 2 Forks
  • 0 Open issues
  • 1 Versions
  • 5 % Grown

The README.md

Build Status, (*1)

Query Text Parser

The Query Text Parser library performs search query text parsing., (*2)

This allows you to write a search query in free form text and parse it into a machine-readable parsing tree., (*3)

The library is fully unit-tested., (*4)

Features

  • AND/OR operators
  • Grouped queries using paranthesis -- i.e. (Denver AND Boston) OR Miami
  • Multi-word search queries using quotes -- i.e. "San Francisco" AND Chicago

Example usage

$parser = new Engage\QueryTextParser\Parser;
$result = $parser->parse('(Chicago AND Houston) OR Phoenix');
print_r($result);

Output

Engage\QueryTextParser\Data\Group Object
(
    [type] => OR
    [children] => Array
        (
            [0] => Engage\QueryTextParser\Data\Group Object
                (
                    [type] => AND
                    [children] => Array
                        (
                            [0] => Engage\QueryTextParser\Data\Partial Object
                                (
                                    [text] => Chicago
                                    [negate] =>
                                )

                            [1] => Engage\QueryTextParser\Data\Partial Object
                                (
                                    [text] => Houston
                                    [negate] =>
                                )

                        )

                )

            [1] => Engage\QueryTextParser\Data\Partial Object
                (
                    [text] => Phoenix
                    [negate] =>
                )

        )

)

TODO

  • Support negating operator (i.e. NOT)

The Versions

25/02 2014

dev-master

9999999-dev

The Query Text Parser library performs search query text parsing

  Sources   Download

The Requires

  • php >=5.3.0

 

The Development Requires

by Mathias Hansen