PHP substr_compare() 函数

实例

比较两个字符串:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. echo substr_compare("Hello world","Hello world",0);
  6. ?>
  7. </body>
  8. </html>

定义和用法

substr_compare() 函数从指定的开始位置比较两个字符串。

提示:该函数是二进制安全且选择性地区分大小写。


语法

  1. substr_compare(string1,string2,startpos,length,case)
参数描述
string1必需。规定要比较的第一个字符串。
string2必需。规定要比较的第二个字符串。
startpos必需。规定在 string1 中的何处开始比较。如果为负数,则从字符串末端开始计数。
length可选。规定对 string1 中的多少字符进行比较(字符数)。
case

可选。布尔值,规定是否执行区分大小写的比较:

  • FALSE - 默认。区分大小写
  • TRUE - 不区分大小写

技术细节

返回值:

该函数返回:

  • 0 - 如果两字符串相等
  • <0 - 如果 string1 (从开始位置 startpos)小于 string2
  • >0 - 如果 string1 (从开始位置 startpos)大于 string2

如果 length 大于或等于 string1 的长度,则该函数返回 FALSE。

PHP 版本:5+
更新日志:自 PHP 5.1 起,允许使用负数的 startpos

更多实例

例子 1

比较两个字符串,当 string1 中供比较的开始位置为 6 时:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. echo substr_compare("Hello world","world",6);
  6. ?>
  7. </body>
  8. </html>
例子 2

使用所有的参数:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. echo substr_compare("world","or",1,2);
  6. echo substr_compare("world","ld",-2,2);
  7. echo substr_compare("world","orl",1,2);
  8. echo substr_compare("world","OR",1,2,TRUE);
  9. echo substr_compare("world","or",1,3);
  10. echo substr_compare("world","rl",1,2);
  11. ?>
  12. </body>
  13. </html>
例子 3

不同的返回值:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <?php
  5. echo substr_compare("Hello world!","Hello world!",0)."<br>"; // 两字符串相等
  6. echo substr_compare("Hello world!","Hello",0)."<br>"; // string1 大于 string2
  7. echo substr_compare("Hello world!","Hello world! Hello!",0)."<br>"; // string1 小于 string2
  8. ?>
  9. </body>
  10. </html>

分类导航