substr_compare()函数用于从指定的开始位置比较两个字符串。
substr_compare(string1,string2,startpos,length,case)
substr_compare() 从偏移位置 startpos 开始比较 string1 与 string2,比较长度为 length 个字符。
如果 string1 从偏移位置 startpos 起的子字符串小于 string2,则返回小于 0 的数;如果大于 string2,则返回大于 0 的数;如果二者相等,则返回 0。如果 startpos 大于等于 string1 的长度或 length 被设置为小于 1 的值( PHP 5.5.11 更早版本),substr_compare() 将打印出一条警告信息并且返回 FALSE。
| 序号 | 参数与说明 |
|---|---|
| 1 | string1 必需。第一个字符串 |
| 2 | string2 必需。第二个字符串 |
| 3 | startpos 必需。它指定在string1中从何处开始比较字符串 |
| 4 | length 可选。指定在 string1 中参与比较的字符数。 |
| 5 | case 布尔值,默认为FALSE, 区分大小写。如果 case 为 TRUE,比较将不区分大小写。 |
试试下面的实例,比较两个字符串,当 string1 中用于比较的开始位置为 6 时::
<?php
//比较两个字符串,当 string1 中用于比较的开始位置为 6 时
echo substr_compare("SAi RAM","RAM",6);
echo '<br>';
//不同参数比较字符串
echo substr_compare("abcde", "bc", 1, 2); // 0
echo '<br>';
echo substr_compare("abcde", "de", -2, 2); // 0
echo '<br>';
echo substr_compare("abcde", "bcg", 1, 2); // 0
echo '<br>';
echo substr_compare("abcde", "BC", 1, 2, true); // 0
echo '<br>';
echo substr_compare("abcde", "bc", 1, 3); // 1
echo '<br>';
echo substr_compare("abcde", "cd", 1, 2); // -1
echo '<br>';
echo substr_compare("abcde", "abc", 5, 1); // warning
?>测试看看‹/›输出结果
-5 0 0 0 0 1 -1 PHP Warning: substr_compare(): The start position cannot exceed initial string....