ExpressionLanguage
class ExpressionLanguage
Allows to compile and evaluate expressions written in your own DSL.
Methods
__construct(ParserCacheInterface $cache = null, array $providers = array()) | ||
string | compile(Expression|string $expression, array $names = array()) Compiles an expression source code. | |
string | evaluate(Expression|string $expression, array $values = array()) Evaluate an expression. | |
ParsedExpression | parse(Expression|string $expression, array $names) Parses an expression. | |
register(string $name, callable $compiler, callable $evaluator) Registers a function. | ||
addFunction(ExpressionFunction $function) | ||
registerProvider(ExpressionFunctionProviderInterface $provider) |
Details
__construct(ParserCacheInterface $cache = null, array $providers = array())
Parameters
ParserCacheInterface | $cache | |
array | $providers |
string compile(Expression|string $expression, array $names = array())
Compiles an expression source code.
Parameters
Expression|string | $expression | The expression to compile |
array | $names | An array of valid names |
Return Value
string | The compiled PHP source code |
string evaluate(Expression|string $expression, array $values = array())
Evaluate an expression.
Parameters
Expression|string | $expression | The expression to compile |
array | $values | An array of values |
Return Value
string | The result of the evaluation of the expression |
ParsedExpression parse(Expression|string $expression, array $names)
Parses an expression.
Parameters
Expression|string | $expression | The expression to parse |
array | $names | An array of valid names |
Return Value
ParsedExpression | A ParsedExpression instance |
register(string $name, callable $compiler, callable $evaluator)
Registers a function.
Parameters
string | $name | The function name |
callable | $compiler | A callable able to compile the function |
callable | $evaluator | A callable able to evaluate the function |
Exceptions
LogicException | when registering a function after calling evaluate(), compile() or parse() |
See also
ExpressionFunction |
addFunction(ExpressionFunction $function)
Parameters
ExpressionFunction | $function |
registerProvider(ExpressionFunctionProviderInterface $provider)
Parameters
ExpressionFunctionProviderInterface | $provider |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.7/Symfony/Component/ExpressionLanguage/ExpressionLanguage.html