php substr_compare从指定的开始位置比较两个字符串

时间:2016-06-01
php开发中,两个字符串比较是经常会遇到的,本文章向码农介绍php字符串比较函数substr_compare的使用方法和基本使用实例,substr_compare从指定的开始位置比较两个字符串,需要的朋友可以参考一下。

substr_compare()定义和用法

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

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

substr_compare()语法

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

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

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

substr_compare()返回值

返回值:

该函数返回:

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

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

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

substr_compare()实例

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

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

在线运行

使用所有的参数:

<?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);
?>

在线运行

不同的返回值:

<?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
?>

在线运行