本文整理汇总了PHP中Doctrine\ORM\Query\Parser::Literal方法的典型用法代码示例。如果您正苦于以下问题:PHP Parser::Literal方法的具体用法?PHP Parser::Literal怎么用?PHP Parser::Literal使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Doctrine\ORM\Query\Parser
的用法示例。
在下文中一共展示了Parser::Literal方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: parse
/**
* {@inheritdoc}
*/
public function parse(Parser $parser)
{
$parser->match(Lexer::T_IDENTIFIER);
$parser->match(Lexer::T_OPEN_PARENTHESIS);
$this->parameters[self::PARAMETER_KEY] = $parser->ArithmeticPrimary();
$parser->match(Lexer::T_AS);
$parser->match(Lexer::T_IDENTIFIER);
$lexer = $parser->getLexer();
$type = $lexer->token['value'];
if ($lexer->isNextToken(Lexer::T_OPEN_PARENTHESIS)) {
$parser->match(Lexer::T_OPEN_PARENTHESIS);
/** @var Literal $parameter */
$parameter = $parser->Literal();
$parameters = array($parameter->value);
if ($lexer->isNextToken(Lexer::T_COMMA)) {
while ($lexer->isNextToken(Lexer::T_COMMA)) {
$parser->match(Lexer::T_COMMA);
$parameter = $parser->Literal();
$parameters[] = $parameter->value;
}
}
$parser->match(Lexer::T_CLOSE_PARENTHESIS);
$type .= '(' . implode(', ', $parameters) . ')';
}
if (!$this->checkType($type)) {
$parser->syntaxError(sprintf('Type unsupported. Supported types are: "%s"', implode(', ', $this->supportedTypes)), $lexer->token);
}
$this->parameters[self::TYPE_KEY] = $type;
$parser->match(Lexer::T_CLOSE_PARENTHESIS);
}
示例2: parse
public function parse(Parser $parser)
{
$parser->match(Lexer::T_IDENTIFIER);
$parser->match(Lexer::T_OPEN_PARENTHESIS);
$this->dateTime = $parser->ArithmeticPrimary();
$parser->match(Lexer::T_COMMA);
$this->interval = $parser->Literal()->value;
$parser->match(Lexer::T_COMMA);
$this->unit = $parser->Literal()->value;
$parser->match(Lexer::T_CLOSE_PARENTHESIS);
}
示例3: parse
/**
* {@inheritdoc}
*/
public function parse(Parser $parser)
{
$parser->match(Lexer::T_IDENTIFIER);
$parser->match(Lexer::T_OPEN_PARENTHESIS);
$this->fieldName = $parser->Literal()->value;
$parser->match(Lexer::T_COMMA);
$this->columnExpression = $parser->StateFieldPathExpression();
$parser->match(Lexer::T_COMMA);
$this->strategy = (int) $parser->Literal()->value;
$parser->match(Lexer::T_CLOSE_PARENTHESIS);
}
示例4: parse
/**
* @override
*/
public function parse(\Doctrine\ORM\Query\Parser $parser)
{
$lexer = $parser->getLexer();
$parser->match(Lexer::T_IDENTIFIER);
$parser->match(Lexer::T_OPEN_PARENTHESIS);
$this->date = $parser->Literal();
if (Lexer::T_COMMA === $lexer->lookahead['type']) {
$parser->match(Lexer::T_COMMA);
$this->modifier = $parser->Literal();
}
$parser->match(Lexer::T_CLOSE_PARENTHESIS);
}
示例5: parse
public function parse(Parser $parser)
{
$parser->match(Lexer::T_IDENTIFIER);
$parser->match(Lexer::T_OPEN_PARENTHESIS);
$this->formatter = $parser->Literal();
$parser->match(Lexer::T_COMMA);
$this->date = $parser->ArithmeticPrimary();
$parser->match(Lexer::T_CLOSE_PARENTHESIS);
}
示例6: parse
/**
* Parse function
*
* @param \Doctrine\ORM\Query\Parser $parser Parser
*
* @return void
*/
public function parse(\Doctrine\ORM\Query\Parser $parser)
{
$parser->match(\Doctrine\ORM\Query\Lexer::T_IDENTIFIER);
$parser->match(\Doctrine\ORM\Query\Lexer::T_OPEN_PARENTHESIS);
$this->relevanceSearchWords = $parser->Literal();
$parser->match(\Doctrine\ORM\Query\Lexer::T_COMMA);
$this->relevanceTitleField = $parser->SingleValuedPathExpression();
$parser->match(\Doctrine\ORM\Query\Lexer::T_COMMA);
$this->relevanceTextField = $parser->SingleValuedPathExpression();
$parser->match(\Doctrine\ORM\Query\Lexer::T_CLOSE_PARENTHESIS);
}
示例7: parse
/**
* {@inheritdoc}
*/
public function parse(Parser $parser)
{
$parser->match(Lexer::T_IDENTIFIER);
$parser->match(Lexer::T_OPEN_PARENTHESIS);
$this->column = $parser->ArithmeticPrimary();
$parser->match(Lexer::T_COMMA);
$this->pattern = $parser->StringPrimary();
$parser->match(Lexer::T_COMMA);
$this->caseInsensitive = 'true' === strtolower($parser->Literal()->value);
$parser->match(Lexer::T_CLOSE_PARENTHESIS);
}
示例8: parse
/**
* (non-PHPdoc)
* @see \Doctrine\ORM\Query\AST\Functions\FunctionNode::parse()
*/
public function parse(\Doctrine\ORM\Query\Parser $parser)
{
$parser->match(Lexer::T_IDENTIFIER);
$parser->match(Lexer::T_OPEN_PARENTHESIS);
do {
$this->_aColumns[] = $parser->StateFieldPathExpression();
$parser->match(Lexer::T_COMMA);
} while ($parser->getLexer()->isNextToken(Lexer::T_IDENTIFIER));
$this->_oNeedle = $parser->InParameter();
while ($parser->getLexer()->isNextToken(Lexer::T_STRING)) {
$this->_oMode = $parser->Literal();
}
$parser->match(Lexer::T_CLOSE_PARENTHESIS);
}