PHP substr_compare() 函数

实例

比较两个字符串:

<?php
echo substr_compare("Hello world","Hello world",0);
?>

运行实例

定义和用法

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

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

语法

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 时:

<?php
echo substr_compare("Hello world","world",6);
?>

运行实例

例子 2

使用所有的参数:

<?php
echo substr_compare("world","or",1,2);
echo substr_compare("world","ld",-2,2);
echo substr_compare("world","orl",1,2);
echo substr_compare("world","OR",1,2,TRUE);
echo substr_compare("world","or",1,3);
echo substr_compare("world","rl",1,2);
?>

运行实例

例子 3

不同的返回值:

<?php
echo substr_compare("Hello world!","Hello world!",0); // 两字符串相等
echo substr_compare("Hello world!","Hello",0); // string1 大于 string2
echo substr_compare("Hello world!","Hello world! Hello!",0); // string1 小于 string2
?>

运行实例