Exception thrown when a not allowed function is used in a template.
This exception class and its children must only be used when an error occurs during the loading of a template, when a syntax error is detected in a template, or when rendering a template. Other errors must use regular PHP exception classes (like when the template cache directory is not writable for instance).
To help debugging template issues, this class tracks the original template name and line where the error occurred.
Whenever possible, you must set these information (original template name and line number) yourself by passing them to the constructor. If some or all these information are not available from where you throw the exception, then this class will guess them automatically (when the line number is set to -1 and/or the name is set to null). As this is a costly operation, this can be disabled by passing false for both the name and the line number when creating a new instance of this class.
author | Martin Hasoň martin.hason@gmail.com |
---|---|
package | Default |
__construct(string $message,integer $lineno = -1,\Twig\Source|string|null $source = null,\Exception $previous = null)
Set the line number to -1 to enable its automatic guessing. Set the name to null to enable its automatic guessing.
string
The error message
integer
The template line where the error occurred
\Exception
The previous exception
appendMessage( $rawMessage)
getFunctionName()
getRawMessage(): string
string
The raw message
getSourceContext(): \Twig\Source|null
getTemplateFile(): string
deprecated | since 1.27 (to be removed in 2.0). Use getSourceContext() instead. |
---|---|
string
The name
getTemplateLine(): integer
integer
The template line
getTemplateName(): string
deprecated | since 1.29 (to be removed in 2.0). Use getSourceContext() instead. |
---|---|
string
The name
guess()
setSourceContext(\Twig\Source $source = null)
setTemplateFile(string $name)
deprecated | since 1.27 (to be removed in 2.0). Use setSourceContext() instead. |
---|---|
string
The name
setTemplateLine(integer $lineno)
integer
The template line
setTemplateName(string $name)
deprecated | since 1.29 (to be removed in 2.0). Use setSourceContext() instead. |
---|---|
string
The name
functionName :
lineno :
filename :
rawMessage :
sourcePath :
sourceCode :