strnatcasecmp
(PHP 4, PHP 5, PHP 7, PHP 8)
strnatcasecmp — 使用“自然顺序”算法比较字符串(不区分大小写)
说明
该函数实现了以人类习惯对数字型字符串进行排序的比较算法。除了不区分大小写,该函数的行为与 strnatcmp() 类似。更多信息,参见:Martin Pool 的» 自然顺序的字符串比较页面。
参数
string1
-
第一个字符串。
string2
-
第二个字符串。
返回值
如果 string1
小于 string2
,则返回小于 0 的值;
如果 string1
大于 string2
,则返回大于 0 的值;
如果它们相等,则返回 0
。
除了它的符号外,不能从返回值中可靠推断出任何特定的含义。
更新日志
版本 | 说明 |
---|---|
8.2.0 |
当字符串长度不相等时,此函数不再保证返回 strlen($string1) - strlen($string2) ,
而可能返回 -1 或 1 。
|
示例
示例 #1 strnatcasecmp() 示例
<?php
var_dump(strnatcasecmp('Apple', 'Banana'));
var_dump(strnatcasecmp('Banana', 'Apple'));
var_dump(strnatcasecmp('apple', 'Apple'));
?>
以上示例会输出:
int(-1) int(1) int(0)
参见
- preg_match() - 执行匹配正则表达式
- strcmp() - 二进制安全字符串比较
- strcasecmp() - 二进制安全比较字符串(不区分大小写)
- substr() - 返回字符串的子串
- stristr() - strstr 函数的忽略大小写版本
- strncasecmp() - 二进制安全比较字符串开头的若干个字符(不区分大小写)
- strncmp() - 二进制安全比较字符串开头的若干个字符
- strstr() - 查找字符串的首次出现
- setlocale() - 设置区域信息
+添加备注
用户贡献的备注 2 notes
chatfielddaniel at googlemail dot com ¶
13 years ago
The function treats '_' as after letters and numbers when it would be placed before logically.
备份地址:http://www.lvesu.com/blog/php/function.strnatcasecmp.php