52680.fb2
Синтаксис:
int strncmp(string str1, string str2, int len)
Эта функция отличается от strcmp() тем, что сравнивает не все слово целиком, а первые len байтов. В случае, если len меньше длины наименьшей из строк, то строки сравниваются целиком.
Эта функция сравнивает две строки посимвольно (точнее, бобайтово) и возвращает:
Так как сравнение идет побайтово, то регистр символов влияет на результаты сравнений.
strcasecmp
Сравнивает строки без учета регистра.
Синтаксис:
int strcasecmp(string str1, string str2)
То же самое, что и strcmp(), только при работе не учитывается регистр букв.
$str1 = "Привет!";
$str2 = "привет!";
if(!strcesecmp($str1, $str2))
echo "$str1 == $str2 при сравнении строк без учета регистра";
strncasecmp
Сравнивает начала строк без учета регистра.
Синтаксис:
int strncasecmp(string str1, string str2, int len)
Функция strncasecmp() является комбинацией функций strcasecmp() и strncmp().
strnatcmp
Производит "естественное" сравнение строк.
Синтаксис:
int strnatcmp(string str1, string str2)
Данная функция имитирует сравнение строк, которое использовал бы человек.
$arr1 = $arr2 = array("img12.png", "img10.png", "img2.png", "img1.png");
echo "Обычная сортировкаn";
usort($arr1, "strcmp");
print_r($arr1);
echo "nЕстенственная сортировкаn";
usort($arr2, "strnatcmp");
print_r($arr2);
Данный скприпт выведет следующее:
Обычная сортировкаArray( [0] => img1.png [1] => img10.png [2] => img12.png [3] => img2.png)Естественная сортировкаArray( [0] => img1.png [1] => img2.png [2] => img10.png [3] => img12.png)
strnatcasecmp
Производит "естественное" сравнение строк без учета регистра.
Синтаксис:
int strnatcasecmp(string str1, string str2)
То же, что и strnatcmp(), только игнорирует регистр.
similar_text
Производит определение схожести двух строк.
Синтаксис:
int similar_text(string firsrt, string second [, double percent])
Функция similar_text() вычисляет схожесть двух строк по алгоритму, описанному Оливером (Oliver [1993]). Но вместо стека (как в псевдокоде Оливера) она использует рекурсивные вызовы.
Сложность алгоритма делает функцию медленной, и ее скорость пропорциональна (N^3), где N - длина наибольшей строки.
Функция возвращает число символов, совпавших в обеих строках. При передаче по ссылке третьего необязательного параметра в нем сохраняется процент совпадения строк.
levenshtein
Определение различия Левенштейна двух строк.
Синтаксис:
int levenshtein(string str1, string str2)int levenshtein(string str1, string str2, int cost_ins, int cost_rep, int cost_del)int levenshtein(string str1, string str2, function cost)