PHP stripos 字符串函数

  • 定义和用法

    stripos - 查找字符串首次出现的位置(不区分大小写)
  • 版本支持

    PHP4 PHP5 PHP7
    支持 支持 支持
    V7.1.0 开始支持负数的 offset。
  • 语法

    stripos ( string $haystack , string $needle [, int $offset = 0 ])  
    
    返回在字符串 haystack 中 needle 首次出现的数字位置。 与 strpos() 不同,stripos() 不区分大小写。
  • 参数

    参数 必需的 描述
    haystack 在该字符串中查找。
    needle 注意 needle 可以是一个单字符或者多字符的字符串。如果 needle 不是一个字符串,那么它将被转换为整型并被视为字符顺序值。
    offset 可选的 offset 参数,从字符此数量的开始位置进行搜索。 如果是负数,就从字符末尾此数量的字符数开始统计。
  • 返回值

    返回 needle 存在于 haystack 字符串开始的位置(独立于偏移量)。同时注意字符串位置起始于 0,而不是 1。 如果未发现 needle 将返回 FALSE。
    此函数可能返回布尔值 FALSE,但也可能返回等同于 FALSE 的非布尔值(整数0)。请阅读 布尔类型章节以获取更多信息。应使用 === 运算符来测试此函数的返回值。
  • 示例

    <?php
    $findme    = 'a';
    $mystring1 = 'xyz';
    $mystring2 = 'ABC';
    
    $pos1 = stripos($mystring1, $findme);
    $pos2 = stripos($mystring2, $findme);
    
    // 'a' 当然不在 'xyz' 中
    if ($pos1 === false) {
       echo "字符串 '$findme' 没有在 '$mystring1' 中找到。";
    }
    
    echo '<br/>';
    // 注意这里使用的是 ===。简单的 == 不能像我们期望的那样工作,
    // 因为 'a' 的位置是 0(第一个字符)。
    if ($pos2 !== false) {
       echo "我们找到 '$findme' 在 '$mystring2' 中的索引为 $pos2";
    }
    ?>
    
    尝试一下
  • 相关函数

    mb_stripos() - 大小写不敏感地查找字符串在另一个字符串中首次出现的位置
    strpos() - 查找字符串首次出现的位置
    strrpos() - 计算指定字符串在目标字符串中最后一次出现的位置
    strripos() - 计算指定字符串在目标字符串中最后一次出现的位置(不区分大小写)
    stristr() - strstr 函数的忽略大小写版本
    substr() - 返回字符串的子串
    str_ireplace() - str_replace 的忽略大小写版本