如何在CodeIgniter中的db活动记录中使like()方法不区分大小写?

Der*_*der 4 php codeigniter

例如,如果我有这些变量:

$variable1 = "ABCDEFG";
$variable2 = "AbCDefG";
Run Code Online (Sandbox Code Playgroud)

和db这样的东西:

ABCDEFG
IJKLMNO
PQRSTUV
...
Run Code Online (Sandbox Code Playgroud)

如果我尝试使用像这样的like()方法:

function get_users()
{

    $q = $this->db->select('*')
                  ->from('users')
                  ->order_by('created asc')
                  ->like('username', $variable1)
                  ->get();
    return $q;

}
Run Code Online (Sandbox Code Playgroud)

结果可以,从数据库中找到ABCDEFG记录.

但是,如果我使用大写和小写传递$ variable2,结果将为none:

function get_users()
{

    $q = $this->db->select('*')
                  ->from('users')
                  ->order_by('created asc')
                  ->like('username', $variable2)
                  ->get();
    return $q;

}
Run Code Online (Sandbox Code Playgroud)

,这是错误的,因为我需要忽略它是小写还是大写.

怎么解决这个?

顺便说一句.我的db排序规则是utf8_general_ci

Cod*_*ank 15

试试这个:

function get_users()
{

    $q = $this->db->select('*')
                  ->from('users')
                  ->order_by('created asc')
                  ->like('LOWER(username)', strtolower($variable2))
                  ->get();
    return $q;

}
Run Code Online (Sandbox Code Playgroud)