详解php如何使用“自然”算法知道字符串的异同方法

首先我们来看一个小例子。

<?php
echo strnatcasecmp("2Hello WORLD!","10Hello WORLD!");
echo "<br>";
echo strnatcasecmp("2hello world!","2aello world!");
echo "<br>";
echo strnatcasecmp("2hello world!","9hello WORLD!");
echo "<br>";
echo strnatcasecmp("2hello world!","2HELLO WORLD!");
?>

这个结果是

1628144342710420

我们仔细看看这个例子啊,当我们除了前面数字其他都一模一样的时候,我们发现数字是-1,当我们数字一样,但是后面字母有所变化的时候,是1,而当数字一样,字母一样,大小写不一样的时候,发现为0.这都是什么原因呢?

带着这些疑问,我们去看看这个函数吧。

strnatcasecmp() 函数使用一种”自然”算法来比较两个字符串(不区分大小写)。

既然这样,那我们去看看这个函数的语法吧。

strnatcasecmp(要比较的第一个字符串,要比较的第二个字符串)

之前我们还在好奇的“0”,“-1”,“1”,你知道是什么意思吗?不卖关子了,其实这些是函数的返回值,用来说明第一个字符串与第二个字符串之间的关系的。

该函数返回:

  • 0 – 如果两个字符串相等

  • <0 – 如果 string1 小于 string2

  • >0 – 如果 string1 大于 string2

 

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片