The function treats '_' as after letters and numbers when it would be placed before logically.
(PHP 4, PHP 5, PHP 7, PHP 8)
strnatcasecmp — Сравнивает строки без учёта регистра по алгоритму natural order
Функция реализует алгоритм сравнения, который упорядочивает буквенно-цифровые строки так, как это сделал бы человек. Поведение функции аналогично функции strnatcmp(), за исключением того, что символы сравниваются без учёта регистра. Дополнительную информацию даёт » Сравнение строк в естественном порядке.
string1
Первая строка.
string2
Вторая строка.
Функция возвращает значение меньше 0, если строка string1
меньше строки string2
; значение больше
0, если строка string1
больше строки
string2
, и 0
, если строки
равны.
Из значения возврата невозможно надёжно вывести конкретное значение,
кроме знака числа.
Версия | Описание |
---|---|
8.2.0 |
Функция больше не гарантирует возврат разницы
strlen($string1) - strlen($string2) , когда длины строк
не равны, но теперь вместо этого иногда возвращает -1
или 1 .
|
Пример #1 Пример cравнения строк без учёта регистра функцией strnatcasecmp()
<?php
var_dump(strnatcasecmp('Apple', 'Banana'));
var_dump(strnatcasecmp('Banana', 'Apple'));
var_dump(strnatcasecmp('apple', 'Apple'));
?>
Результат выполнения приведённого примера:
int(-1) int(1) int(0)
The function treats '_' as after letters and numbers when it would be placed before logically.