Регистронезависимый поиск SQLite3

| 12.07.2016 | 0 Comments

1 o_w8Fw0OxCxfZCWpfuUWoA Чтобы добавить возможность выполнять регистронезависимый поиск с кириллическими символами, и вместе с этим получить возможность использовать функцию REGEXP в SQLite3 — нужно зарегистрировать пользовательскую функцию перед запросом:

1
2
3
4
5
6
7
8
9
10
11
$pdo->sqliteCreateFunction('regexp',
	function ($pattern, $data, $delimiter = '~', $modifiers = 'isuS') {
		if (isset($pattern, $data) === true)
			return (preg_match(sprintf('%1$s%2$s%1$s%3$s', $delimiter, $pattern, $modifiers), $data) > 0);
		return null;
	}
);
 
// $pdo->query("SELECT * FROM table WHERE name REGEXP 'Регистронезависимый Поисковый Запрос'");
// $pdo->query("SELECT * FROM table WHERE name REGEXP 'sql(ite)*'");
// $pdo->query("SELECT * FROM table WHERE regexp('sql(ite)*', 'name', '#', 's')");

Категория: Программирование

Комментари (0)

Trackback URL | Comments RSS Feed

Комментариев пока что нет. Вы будете первым!

Оставить комментарий