Парсер
класс Parser
Парсит поток токенов.
Этот парсер реализует алгоритм "восхождения по приоритетам".
Константы
| OPERATOR_LEFT | |
| OPERATOR_RIGHT |
Методы
| __construct(array $functions) | ||
| Node | parse(TokenStream $stream, array $names = array()) Преобразует поток токенов в дерево узлов. | |
| parseExpression($precedence) | ||
| parsePrimaryExpression() | ||
| parseArrayExpression() | ||
| parseHashExpression() | ||
| parsePostfixExpression($node) | ||
| parseArguments() Парсит аргументы. |
Подробности
__construct(array $functions)
Параметры
| array | $functions |
Node parse(TokenStream $stream, array $names = array())
Преобразует поток токенов в дерево узлов.
Массив `$names` содержит имена, которые пользователь может использовать в выражении.
Если имя переменной в сгенерированном PHP коде должно быть другим, определите его в качестве ключа.
Например, `['this' => 'container']` означает, что переменная `'container'` может использоваться в выражении, но сгенерированный код будет использовать `'this'`.
Параметры
| TokenStream | $stream | Экземпляр потока токенов |
| array | $names | Массив допустимых имён |
Возвращаемое значение
| Node | Дерево узлов |
Исключения
| SyntaxError |
parseExpression($precedence)
Параметры
| $precedence |
parsePrimaryExpression()
parseArrayExpression()
parseHashExpression()
parsePostfixExpression($node)
Параметры
| $node |
parseArguments()
Парсит аргументы.
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.0/Symfony/Component/ExpressionLanguage/Parser.html