EngineInterface
interface EngineInterface
EngineInterface is the interface each engine must implement.
All methods rely on a template name. A template name is a "logical" name for the template, and as such it does not refer to a path on the filesystem (in fact, the template can be stored anywhere, like in a database).
The methods should accept any name. If the name is not an instance of TemplateReferenceInterface, a TemplateNameParserInterface should be used to convert the name to a TemplateReferenceInterface instance.
Each template loader uses the logical template name to look for the template.
Methods
string | render(string|TemplateReferenceInterface $name, array $parameters = array()) Renders a template. | |
bool | exists(string|TemplateReferenceInterface $name) Returns true if the template exists. | |
bool | supports(string|TemplateReferenceInterface $name) Returns true if this class is able to render the given template. |
Details
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 |
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 |
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 |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/4.0/Symfony/Component/Templating/EngineInterface.html