2013-06-10 4 views
2

Можно ли отсортировать массив, сравнив все значения с выбранной строкой?Сортировка массива по сравнению с строкой

Я пытаюсь сортировать некоторые результаты автозаполнения, чтобы иметь "like%" перед тем, как "%like%".

+1

Вы пробовали два разных запроса с UNION? – Wallack

+0

Я использую тот же запрос для других filds –

+0

@ Rastaking, не могли бы вы дать несколько примеров входов/выходов? – Dogbert

ответ

3

Вы можете использовать usort с закрытием и аналогичным текстом.

$word = "targetword"; 
usort($matches, function ($a, $b) use ($word) { 
    return similar_text($word,$a) - similar_text($word, $b); 
}); 
+0

Я не нашел, как добавить переменную $ word :)! благодаря –

0

Существует функция, называемая similar_text(), которая возвращает целое число, описывающее подобие 2 строк. Вы можете легко создать референтный массив с таким значением подобия, как индекс, и передать этот массив на ksort().

Смежные вопросы