Создать массив возможных символов в строке поиска

Я пытаюсь создать массив возможных символов после того, как пользователь отправит запрос на поиск.

Если я ищу пользователя Draven Я хотел бы, чтобы мой массив выглядел так (и любые другие символы, которые мне не хватает)

Array
(
[0] => Dräven
[1] => Dräven
[2] => Dr&aUML;ven
[3] => Draven
)

Есть ли простой (короткий) способ сделать это?
Единственное, что я придумал, это функция длиной 500 строк, и это только половина символов, которые мне нужны.

0

Решение

Возможно, вы могли бы подойти к этому по-другому. Вместо того, чтобы преобразовывать пользовательский ввод во все возможные варианты и сравнивать, удалите диакритические знаки из своего пространства поиска и сравните.

// Normalise data (remove accent marks)
// This requires the intl extension
// On debian: apt-get install php5-intl
$data = normalizer_normalize($data);

Если вы сделаете это, вам может понадобиться сохранить две партии данных — одну в качестве исходных неконвертированных данных и снова нормализованную для использования в качестве пространства поиска.

0

Другие решения

Других решений пока нет …