新西兰服务器

php中如何比对字符串是否相等


php中如何比对字符串是否相等

发布时间:2022-01-01 15:09:26 来源:高防服务器网 阅读:99 作者:小新 栏目:编程语言

这篇文章给大家分享的是有关php中如何比对字符串是否相等的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

php比较字符串是否相等的方法有:1、使用“字符串1==字符串2”语句;2、使用“字符串1===字符串2”语句;3、使用“strcmp(字符串1,字符串2)”语句;4、使用“strcasecmp(字符串1,字符串2)”语句等等。

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

比较两个字符串是否相等

一般能用 !=、== 比较两个对象是否相等,只所以说是两个对象,是因为他们不一定全部为字符串,也能为整型等等。比如

$a = "joe";  $b = "jerry";  if ($a != $b)  {      echo "不相等";  }  else  {      echo "相等";  }

如果用 !==、===(能看到多了一个等号)比较的话,两个对象的类型要严格相等才能返回true;否则用==、!=则会将字符串自动转换成相应的类型,以便进行比较.

22 == "22"; // 返回 true  22 === "22"; // 返回false

正因为这样,所以我们的程式时常会发生一些想不到的“意外”:

0 == "我爱你"; // 返回true  1 == "1 我爱你";// 返回true

php教程里 更有这样一组用于字符串比较的函数:strcmp、strcasecmp、strncasecmp()、 strncmp(),返回值说明:

strcmp是用于区分大小写(即大小写敏感)的字符串比较:

echo strcmp("abcdd", "abcde"); // 返回 1 (>0), 比较的是 "b"和"b"

strcasecmp用于不区分大小写的字符串比较:

echo strcasecmp("abcdd", "abcde"); // 返回 -1 (<0), 比较的是"d"和"e"

strncmp用于比较字符串的一部分,从字符串的开头开始比较,第三个参数,为要比较的长度:

echo strncmp("abcdd", "abcde", 3); // 返回 1 (>0), 比较了 abc 和 abc

strncasecmp用于不区分大小写的比较字符串的一部分,从字符串的开头开始比较,第三个参数,为要比较的长度:

echo strncasecmp("abcdd", "abcde", 3); // 返回 0, 比较了 abc 和 abc, 由于不区分大小写,所以两者是相同的。

更有一种情况是单单比较字符串大小,达不到我们预定的需求,比如照常理 10.gif 会比 5.gif 大,但如果应用上面几个函数,就会返回 -1,即表示 10.gif比5.gif,针对这种情况,php提供了两个自然对比的函数strnatcmp,strnatcasecmp:

echo strnatcmp("10.gif", "5.gif"); // 返回 1 (>0)  echo strnatcasecmp("10.gif", "5.gif"); // 返回 1 (>0)

感谢各位的阅读!关于“php中如何比对字符串是否相等”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

[微信提示:高防服务器能助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

[图文来源于网络,不代表本站立场,如有侵权,请联系高防服务器网删除]
[