Copied!

Subtree

Subtree.php : 21
Extends Criterion
Implements FilteringCriterion

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

Properties

public $operator

Criterion.php : 23

The operator used by the Criterion.

public string $operator

public $target

Criterion.php : 37

The target used by the criteria (field, metadata...).

public string $target

public $value

Criterion.php : 30

The value(s) matched by the criteria.

public array<string|int, scalar>|scalar $value

public $valueData

Criterion.php : 44

Additional value data, required by some criterions, MapLocationDistance for instance.

public Value $valueData

Methods

public__construct()

Subtree.php : 31

Creates a new SubTree criterion.

public __construct(string|array<string|int, string> $value)

Parameters

Name Type Default value Description
$value string|array<string|int, string> -

an array of subtree path strings, eg: /1/2/

Tags
Throws
InvalidArgumentException

if a non path string is given

Throws
InvalidArgumentException

if the value type doesn't match the operator

publicgetSpecifications()

Subtree.php : 42

Criterion description function.

public getSpecifications() : array<string|int, Specifications>

Returns the combination of the Criterion's supported operator/value, as an array of 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 [ // The EQ operator expects a single value, either as an integer or a string new Specifications( Operator::EQ, Specifications::FORMAT_SINGLE, Specifications::TYPE_INTEGER | Specifications::TYPE_STRING ), // The IN operator expects an array of values, of either integers or strings new Specifications( Operator::IN, Specifications::FORMAT_ARRAY, Specifications::TYPE_INTEGER | Specifications::TYPE_STRING ) ]

Return values

array<string|int, Specifications>