class PathTemplate implements Countable

Represents a path template.

Templates use the syntax of the API platform; see the protobuf of HttpRule for details. A template consists of a sequence of literals, wildcards, and variable bindings, where each binding can have a sub-path. A string representation can be parsed into an instance of PathTemplate, which can then be used to perform matching and instantiation.

Methods

__construct(string $data)

PathTemplate constructor.

string
__toString()

No description

int
count()

No description

string
render(array $bindings)

Renders a path template using the provided bindings.

array
match(string $path)

Matches a fully qualified path template string.

Details

at line 57
__construct(string $data)

PathTemplate constructor.

Parameters

string $data A path template string

Exceptions

ValidationException When $data cannot be parsed into a valid PathTemplate

at line 71
string __toString()

Return Value

string A string representation of the path template

at line 79
int count()

Return Value

int The number of segments in the path template

at line 92
string render(array $bindings)

Renders a path template using the provided bindings.

Parameters

array $bindings An array matching var names to binding strings.

Return Value

string A rendered representation of this path template.

Exceptions

ValidationException if a key isn't provided or if a sub-template can't be parsed.

at line 139
array match(string $path)

Matches a fully qualified path template string.

Parameters

string $path A fully qualified path template string.

Return Value

array Array matching var names to binding values.

Exceptions

ValidationException if path can't be matched to the template.