W3cubDocs

/Symfony 3.0

Symfony\Component\ExpressionLanguage\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

public __construct(ParserCacheInterface $cache = null, array $providers = array())

Parameters

ParserCacheInterface $cache
array $providers

public 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

public 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

public 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

public 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

See also

ExpressionFunction

public addFunction(ExpressionFunction $function)

Parameters

ExpressionFunction $function

public registerProvider(ExpressionFunctionProviderInterface $provider)

© 2004–2016 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/ExpressionLanguage/ExpressionLanguage.html