я знаю, что этот вопрос очень старый, но я отвечаю на этот вопрос для тех, у кого такая же ошибка.
вам просто нужно добавить приведенный ниже код в виде файла с именем "SecToTime.php", как показано ниже.
YourProjectName \ library \ Doctrine \ DoctrineExtensions \ Query \ MySql \ SecToTime.php
И поместите приведенный ниже код в указанный выше файл с именем "SecToTime.php".
<?php
namespace DoctrineExtensions\Query\Mysql;
use Doctrine\ORM\Query\AST\Functions\FunctionNode,
Doctrine\ORM\Query\Lexer;
class SecToTime extends FunctionNode {
public $time;
/**
* @override
*/
public function getSql(\Doctrine\ORM\Query\SqlWalker $sqlWalker) {
return 'SEC_TO_TIME(' . $sqlWalker->walkArithmeticPrimary($this->time) . ')';
}
/**
* @override
*/
public function parse(\Doctrine\ORM\Query\Parser $parser) {
$parser->match(Lexer::T_IDENTIFIER);
$parser->match(Lexer::T_OPEN_PARENTHESIS);
$this->time = $parser->ArithmeticPrimary();
$parser->match(Lexer::T_CLOSE_PARENTHESIS);
}
}
вам нужно добавить указанное выше имя файла в ваш файл doctrine.php для дальнейшего использования. Я надеюсь, что вы знаете, как добавить это.
Если у вас есть какие-либо вопросы, не стесняйтесь спрашивать.