PHP - Как использовать strtolower в запросе - PullRequest
17 голосов
/ 28 июля 2011

В базе данных у меня есть это поле: " TeST ", и я не знаю, где находится замок с заглушками, и я просто хочу расширить его и сделать что-то подобное

SELECT * FROM table WHERE strtolower(field) = strtolower($var)

Как я могу это сделать?

Ответы [ 4 ]

46 голосов
/ 28 июля 2011

Используя PDO и предполагая MySQL

$stmt = $db->prepare('SELECT * FROM table WHERE LOWER(`field`) = ?');
$stmt->execute(array(strtolower($var)));
10 голосов
/ 28 июля 2011

В MySQL функция называется LOWER Опять же, вы можете просто использовать регистр без учета регистра в поле или в запросе, и он будет совпадать независимо от регистра, который выглядит как лучший вариант.

6 голосов
/ 09 января 2018

Просто используйте:

"SELECT * FROM `table_name` WHERE LOWER(`field_name`)='".strtolower($_var)."'";

Или используйте

"SELECT * FROM `table_name` WHERE LCASE(`field_name`)='".strtolower($_var)."'";

Обе функции работают одинаково

4 голосов
/ 16 ноября 2016

LOWER функция в MySQL может использоваться для преобразования значения поля в нижний регистр. например:

"select * from table_name where LOWER(email) = ?";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...