substr_compare 二进制安全比较字符串(从偏移位置比较指定长度)

发表日期:2021-07-01 10:23:25 | 来源: | | 浏览(1473) 分类:字符串 函数

substr_compare

(PHP 5, PHP 7, PHP 8)

substr_compare二进制安全比较字符串(从偏移位置比较指定长度)

说明

substr_compare(
    string $main_str,
    string $str,
    int $offset,
    int $length = ?,
    bool $case_insensitivity = false
): int

substr_compare() 从偏移位置 offset 开始比较 main_strstr,比较长度为 length 个字符。

参数

main_str

待比较的第一个字符串。

str

待比较的第二个字符串。

offset

比较开始的位置。如果为负数,则从字符串结尾处开始算起。

length

比较的长度。默认值为 str 的长度与 main_str 的长度减去位置偏移量 offset 后二者中的较大者。

case_insensitivity

如果 case_insensitivitytrue,比较将不区分大小写。

返回值

如果 main_str 从偏移位置 offset 起的子字符串小于 str,则返回小于 0 的数;如果大于 str,则返回大于 0 的数;如果二者相等,则返回 0。如果 offset 大于等于 main_str 的长度或 length 被设置为小于 1 的值( PHP 5.5.11 之前的版本),substr_compare() 将打印出一条警告信息并且返回 false

更新日志

版本 说明
7.2.18, 7.3.5 offset 现在可能等于 main_str

范例

示例 #1 substr_compare() 范例

<?php 
echo substr_compare("abcde", "bc", 1, 2);
 // 0echo substr_compare("abcde", "de", -2, 2);
 // 0echo substr_compare("abcde", "bcg", 1, 2);
 // 0echo substr_compare("abcde", "BC", 1, 2, true);
 // 0echo substr_compare("abcde", "bc", 1, 3);
 // 1echo substr_compare("abcde", "cd", 1, 2);
 // -1echo substr_compare("abcde", "abc", 5, 1);
 // warning?>

参见

  • strncmp() - 二进制安全比较字符串开头的若干个字符

集速网 copyRight © 2015-2022 宁ICP备15000399号-1 宁公网安备 64010402001209号
与其临渊羡鱼,不如退而结网
欢迎转载、分享、引用、推荐、收藏。