Symfony 4.如何使用户名不区分大小写?

时间:2019-05-17 09:13:01

标签: php postgresql symfony symfony4

我正在使用Symfony的登录表单,但是如果输入的用户名是'FOO'并且在数据库中存储了'foo',则无法登录。我正在使用Postgres。这意味着用户名字段区分大小写。 我该怎么办?

1 个答案:

答案 0 :(得分:3)

这主要取决于您的数据库服务器。 MySQL不区分大小写,PostgreSQL不区分大小写。

但是您可以像这样写查询

$this->createQueryBuilder('user')
            ->where('LOWER(user.username) = :username')
            ->setParameter('username', strtolower($username))
            ->getQuery()
            ->getResult()
            ;