diff --git a/src/MD_STD_SORT.php b/src/MD_STD_SORT.php index 44c5303..43e72a1 100644 --- a/src/MD_STD_SORT.php +++ b/src/MD_STD_SORT.php @@ -29,8 +29,14 @@ final class MD_STD_SORT { if ($a[$nameIndex] === $searchValue) return -1; if ($b[$nameIndex] === $searchValue) return 1; - if (stripos($a[$nameIndex], $searchValue) !== false) return -1; - if (stripos($b[$nameIndex], $searchValue) !== false) return 1; + $containsSearchA = stripos($a[$nameIndex], $searchValue); + $containsSearchB = stripos($b[$nameIndex], $searchValue); + + if ($containsSearchA !== false and $containsSearchB !== false) { + return $a[$sortIndex] > $b[$sortIndex] ? -1 : 1; + } + if ($containsSearchA !== false) return -1; + if ($containsSearchB !== false) return 1; return $a[$sortIndex] > $b[$sortIndex] ? -1 : 1; };