Pheasant\Database\FilterChain::onQuery PHP Method

onQuery() public method

Attach an intercepting filter, gets called with query, returns query
public onQuery ( $callback )
    public function onQuery($callback)
    {
        $this->_onquery[] = $callback;
        return $this;
    }

Usage Example

Example #1
0
 public function testFilteringQuery()
 {
     $connection = \Mockery::mock('\\Pheasant\\Database\\Mysqli\\Connection');
     $connection->shouldReceive('execute')->with('SELECT llamas FROM animals')->once();
     $filter = new FilterChain();
     $filter->onQuery(function ($sql) {
         return 'SELECT llamas FROM animals';
     });
     $filter->execute('SELECT 1', function ($sql) use($connection) {
         $connection->execute($sql);
     });
     $this->assertTrue(true);
 }