<?php
$data = ['Быстрый телефон', 'Быстрый кнопочный телефон', 'Это телефон', 'Другое'];
$q = 'телефон';
usort($data, function($a, $b) use ($q) { if ($posB === false) return -1; // для строк, у которых вообще нет искомого слова
return $posA - $posB;
});
PD9waHAKCiRkYXRhID0gWyfQkdGL0YHRgtGA0YvQuSDRgtC10LvQtdGE0L7QvScsICfQkdGL0YHRgtGA0YvQuSDQutC90L7Qv9C+0YfQvdGL0Lkg0YLQtdC70LXRhNC+0L0nLCAn0K3RgtC+INGC0LXQu9C10YTQvtC9JywgJ9CU0YDRg9Cz0L7QtSddOwoKJHEgPSAn0YLQtdC70LXRhNC+0L0nOwoKdXNvcnQoJGRhdGEsIGZ1bmN0aW9uKCRhLCAkYikgdXNlICgkcSkgewoJJHBvc0EgPSBzdHJwb3MoJGEsICRxKTsKCSRwb3NCID0gc3RycG9zKCRiLCAkcSk7CglpZiAoJHBvc0IgPT09IGZhbHNlKSByZXR1cm4gLTE7IC8vINC00LvRjyDRgdGC0YDQvtC6LCDRgyDQutC+0YLQvtGA0YvRhSDQstC+0L7QsdGJ0LUg0L3QtdGCINC40YHQutC+0LzQvtCz0L4g0YHQu9C+0LLQsAoJcmV0dXJuICRwb3NBIC0gJHBvc0I7Cn0pOwoKdmFyX2V4cG9ydCgkZGF0YSk7