Symfony 未找到自定义DQL函数

Symfony 未找到自定义DQL函数,symfony,doctrine-orm,dql,Symfony,Doctrine Orm,Dql,我正在尝试为DQL实现一个自定义日期函数,下面是代码: namespace SwingBy\SwingByBundle\DQL; use Doctrine\ORM\Query\Lexer; use Doctrine\ORM\Query\AST\Functions\FunctionNode; /** * Date ::= "DATE" "(" ArithmeticPrimary ")" */ class Date extends FunctionNode { public

我正在尝试为DQL实现一个自定义日期函数,下面是代码:

namespace SwingBy\SwingByBundle\DQL; 

use Doctrine\ORM\Query\Lexer;
use Doctrine\ORM\Query\AST\Functions\FunctionNode;

/**
 * Date  ::= "DATE" "(" ArithmeticPrimary ")"
 */

class Date extends FunctionNode {

    public $dateTimeExpression = null;

    public function parse(\Doctrine\ORM\Query\Parser $parser){

         $parser->match(Lexxer::T_IDENTIFIER);
         $parser->match(Lexxer::T_OPEN_PARENTHESIS);
         $this->dateTimeExpression = $parser->ArithmeticPrimary();
         $parser->match(Lexxer::T_CLOSE_PARENTHESIS);
    }

    public function getSql(\Doctrine\ORM\Query\SqlWalker $sqlWalker){

        return "DATE(" . $this->dateTimeExpression . ")";
    }
}
以下是config.yml中的配置:

doctrine:
    orm:
        dql:
            datetime_functions:
                date: SwingBy\SwingByBundle\DQL\Date
下面是错误:

The autoloader expected class "SwingBy\SwingByBundle\DQL\Date" to be defined in file 
"/Applications/MAMP/htdocs/swingby_dev2.3/src/SwingBy/SwingByBundle/DQL/Date.php". The 
file was found but the class was not in it, the class name or namespace probably has a   
typo.
我找不到解决方案,我尝试了几个不同的名称空间,但都不起作用

Symfony版本:2.3

根据文件

和/或尝试添加反斜杠

日期:\SwingBy\SwingByBundle\DQL\date


名称空间SwingBy\SwingByBundle\DQL;阿莱迪试过了,还是一样的错误。错误信息很清楚。确保您正在查看正确的文件。虽然不会造成任何伤害,但如果您正在处理多个实体管理器,您实际上只需要实体管理级别。不,添加反斜杠既不是必需的,也不会有帮助。系统知道需要加载的日期,并且知道正确的文件。他只是有个打字错误。问题中发布的内容可能并不代表实际日期文件中的内容。
doctrine:
    orm:
        entity_managers:
            default:
                dql:
                    datetime_functions:
                        date: SwingBy\SwingByBundle\DQL\Date