Index

FilterStatement

MMO\pdo\statements · 1 symbol · generated 5 Oct 2026

class

FilterStatement

FilterStatement.php:25
class MMO\pdo\statements\FilterStatement extends MMO\pdo\statements\Statement
Namespace
MMO\pdo\statements
Extends
Statement

Constants4

LIMIT_KEY

const LIMIT_KEY = 'LIMIT'

MAX_LIMIT

const MAX_LIMIT = '18446744073709551615'

ORDER_KEY

const ORDER_KEY = 'ORDER'

WHERE_KEY

Reserved content keys for the trailing clauses this class appends to every template.

const WHERE_KEY = 'WHERE'WARNING: these MUST start with a letter. A placeholder whose name starts with anything else (`_` included) is not recognised as a placeholder at all by [`loopTemplate`](https://mcp.mmoframework.fr/documentation/mmo.core/php/strings.md#looptemplate) -- it is left in the query as literal text, and the driver then chokes on `unrecognized token: "{"`.

Methods5

setFilter($filter)

FilterStatement.php:96
function setFilter(MMO\core\interfaces\iFilter|array|string|null $filter): selfNOTE: the filter is validated here, not at render time. The printer's exceptions are caught by
See
TextPrinter::__invoke and returned as inline text, so a filter it cannot render would otherwise be pasted into the query instead of failing.
$filteriFilter | array | string | nulla core filter (Filter::From); null clears it
returnsself
throwson an operator with no SQL equivalent
throwson a nested path

__construct($handler, $template, $content, $opts)

FilterStatement.php:39
function __construct( MMO\pdo\interfaces\iHandler $handler, string $template, array $content = [], array $opts = [] )
$handleriHandler
$templatestring
$content = []array
$opts = []array
Inherited members (53)
ConstantsDeclared byDescription
ALL_FLAGStatement
CREATE_IF_NOT_EXISTS_FLAGStatement
CREATE_TEMPORARY_FLAGStatement
DELAYED_FLAGStatement
DISTINCT_FLAGStatement
DISTINCT_ROW_FLAGStatement
HIGH_PRIORITY_FLAGStatement
IF_EXISTS_FLAGStatement
IGNORE_FLAGStatement
LOW_PRIORITY_FLAGStatement
QUICK_FLAGStatement
STRAIGHT_JOIN_FLAGStatement
PropertiesDeclared byDescription
contentStatement
handlerStatement
optsStatement
stmtStatement
templateStatement
MethodsDeclared byDescription
addOptions($opts, $appendList)StatementMerge $opts into the existing options (through merge), rather than replacing them wholesale like setOptions.
bindValue($pdo, $index, $value, $type, $binds)StatementBind one already-emitted value onto the PDO statement.
clear()StatementEmpty the underlying content, keeping the object itself.
clearOptions()StatementEmpty the options bag.
count()Statement\Countable::count
execute()StatementExecute the query and set the current statement
fetch($opt)StatementFetch the first row of the query's result
fetchAll($clear)StatementFetch all the result of a query
fetchAllObjects($class, $constructFirst, $args, $clear)StatementFetch all the result of a query as Objects.
fetchObject($class, $constructFirst, $args)StatementFetch the result of a query as an Object.
fetchValue($key)StatementFetch the column's value of the first row of the query's result and advance fetch pointer
fetchValues($key)StatementFetch the column's value of all the row of the query's result
flag($key, $flag, $set)Statement
getIterator()Statement\IteratorAggregate::getIterator
getOption($key, $default)Statement
getOptions()Statement
getPDOStatement()Statement
getPlaceholders()StatementExtract placeholder from template
isEmpty()Statement
jsonSerialize()Statement\JsonSerializable::jsonSerialize -- the raw content is returned as-is (not recursively converted), so json_encode() relies on any nested iArray values being JsonSerializable themselves.
keys()Statement
loadArray($data)StatementLoad every entry of a plain array into the content, through offsetSet (so any offsetSet() override defined by the class using this trait, e.g.
offsetExists($key)Statement\ArrayAccess::offsetExists
offsetGet($key)Statement\ArrayAccess::offsetGet
offsetSet($key, $value)Statement\ArrayAccess::offsetSet -- a null $key appends ($bag[] = $value), like a plain PHP array.
offsetUnset($key)Statement\ArrayAccess::offsetUnset -- on a list (sequential integer keys, as produced by $bag[] = ...), the element is spliced out (closing the gap and reindexing), matching \unset() semantics on a plain …
prepare($binds, $sql)StatementPrepare a PDO statement by binding values.
push($key, $fields)Statement
render($opts)Statement
reset()Statement
rowCount()Statement
setOption($key, $value)StatementSet (or, with a null $value, remove) a single option.
setOptions($opts)StatementReplace the whole options bag.
SplitType($key)StatementSplit a column:type key used by the INSERT/UPDATE value lists.
toArray()StatementConvert the content to a plain array, recursively converting any nested iArray value (e.g.
__toString()Statement