class DelegatingEngine implements EngineInterface, StreamingEngineInterface

DelegatingEngine selects an engine for a given template.

Properties

protected EngineInterface[] $engines

Methods

__construct(array $engines = array())

No description

string
render(string|TemplateReferenceInterface $name, array $parameters = array())

Renders a template.

stream(string|TemplateReferenceInterface $name, array $parameters = array())

Streams a template.

bool
exists(string|TemplateReferenceInterface $name)

Returns true if the template exists.

addEngine(EngineInterface $engine)

No description

bool
supports(string|TemplateReferenceInterface $name)

Returns true if this class is able to render the given template.

getEngine(string|TemplateReferenceInterface $name)

Get an engine able to render the given template.

Details

at line 29
__construct(array $engines = array())

Parameters

array $engines An array of EngineInterface instances to add

at line 39
string render(string|TemplateReferenceInterface $name, array $parameters = array())

Renders a template.

Parameters

string|TemplateReferenceInterface $name A template name or a TemplateReferenceInterface instance
array $parameters An array of parameters to pass to the template

Return Value

string The evaluated template as a string

Exceptions

RuntimeException if the template cannot be rendered

at line 47
stream(string|TemplateReferenceInterface $name, array $parameters = array())

Streams a template.

The implementation should output the content directly to the client.

Parameters

string|TemplateReferenceInterface $name A template name or a TemplateReferenceInterface instance
array $parameters An array of parameters to pass to the template

Exceptions

RuntimeException if the template cannot be rendered
LogicException if the template cannot be streamed

at line 60
bool exists(string|TemplateReferenceInterface $name)

Returns true if the template exists.

Parameters

string|TemplateReferenceInterface $name A template name or a TemplateReferenceInterface instance

Return Value

bool true if the template exists, false otherwise

Exceptions

RuntimeException if the engine cannot handle the template name

at line 65
addEngine(EngineInterface $engine)

Parameters

EngineInterface $engine

at line 73
bool supports(string|TemplateReferenceInterface $name)

Returns true if this class is able to render the given template.

Parameters

string|TemplateReferenceInterface $name A template name or a TemplateReferenceInterface instance

Return Value

bool true if this class supports the given template, false otherwise

at line 93
EngineInterface getEngine(string|TemplateReferenceInterface $name)

Get an engine able to render the given template.

Parameters

string|TemplateReferenceInterface $name A template name or a TemplateReferenceInterface instance

Return Value

EngineInterface The engine

Exceptions

RuntimeException if no engine able to work with the template is found