class PermissionSubtree extends Subtree

Criterion that matches content that belongs to a given (list of) Subtree(s).

Content will be matched if it is part of at least one of the given subtree path strings

This is a internal subtree criterion intended for use by permission system (SubtreeLimitationType) only! And will be applied by SQL based search engines on Content Search to avoid performance problems.


string $operator The operator used by the Criterion.
array(int|string) $value The value(s) matched by the criteria.
string $target The target used by the criteria (field, metadata...).
Value $valueData Additional value data, required by some criterions, MapLocationDistance for instance.


__construct(string|string[] $value)

Creates a new SubTree criterion.

from Subtree
Specifications[] getSpecifications()

Criterion description function.

from Subtree
static  createFromQueryBuilder($target, $operator, $value)


in Subtree at line 31
public __construct(string|string[] $value)

Creates a new SubTree criterion.


string|string[] $value an array of subtree path strings, eg: /1/2/


InvalidArgumentException if a non path string is given
InvalidArgumentException if the value type doesn't match the operator

in Subtree at line 42
public Specifications[] getSpecifications()

Criterion description function.

Returns the combination of the Criterion's supported operator/value, as an array of eZ\Publish\API\Repository\Values\Content\Query\Criterion\Operator\Specifications objects - Operator is one supported Operator, as an Operator::* constant - ValueType is the type of input value this operator requires, either array or single - SupportedTypes is an array of types the operator will accept - ValueCountLimitation is an integer saying how many values are expected.

// IN and EQ are supported return array( // The EQ operator expects a single value, either as an integer or a string new Specifications( Operator::EQ, Specifications::INPUTTYPESINGLE, array( Specifications::INPUTVALUEINTEGER, Specifications::INPUTVALUESTRING ), ), // The IN operator expects an array of values, of either integers or strings new Specifications( Operator::IN, Specifications::INPUTTYPEARRAY, array( Specifications::INPUTVALUEINTEGER, Specifications::INPUTVALUESTRING ) ) )*

Return Value


at line 26
static public createFromQueryBuilder($target, $operator, $value)