·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> php网站开发 >> PHP strcmp,strnatcmp,strncmp函数的区别

PHP strcmp,strnatcmp,strncmp函数的区别

作者:佚名      php网站开发编辑:admin      更新时间:2022-07-23
php strcmp,strnatcmp,strncmp函数的区别

字符串比较说明当s1<s2时,返回为负数当s1=s2时,返回值= 0当s1>s2时,返回正数

 1 <?php 2 $str1 = 'str100'; 3 $str2 = 'str20'; 4 echo strcmp($str1, $str2)."<br>"; 5 //输出-1 6 echo strnatcmp($str1, $str2)."<br>"; 7 //输出1 8 echo strncmp($str1, $str2, 5)."<br>"; 9 //输出-110 11 ?>

strcmp(str1, str2)函数按照字符比较两个字符串,即两个字符串自左向右逐个字符比较(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。如:"A"<"B" "a">"A" "computer">"compare"

strnatcmp(str1, str2)函数使用自然排序算法比较字符串该函数实现了以人类习惯对数字型字符串进行排序的比较算法,这就是“自然顺序”。

strncmp(str1, str2, len)函数比较的原理参照strcmp(str1, str2)函数,区别在于只是比较字符串的开头的len个字符。

ps:以上三个函数都是区分大小写的,若是对比较的字符串不区分大小写,则有另外三个类似函数:strcasecmp,strnatcasecmp,strncasecmp.