PHP strpos 字符串函数

  • 定义和用法

    strpos - 查找字符串首次出现的位置
  • 版本支持

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

    strpos (string $haystack , mixed $needle [, int $offset = 0 ])  
    
    返回 needle 在 haystack 中首次出现的数字位置。
  • 参数

    参数 必需的 描述
    haystack 在该字符串中进行查找。
    needle 如果 needle 不是一个字符串,那么它将被转换为整型并被视为字符的顺序值。
    offset 如果提供了此参数,搜索会从字符串该字符数的起始位置开始统计。 如果是负数,搜索会从字符串结尾指定字符数开始。
  • 返回值

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

    <?php
    $mystring = 'abc';
    $findme   = 'a';
    $pos = strpos($mystring, $findme);
    
    // 注意这里使用的是 ===。简单的 == 不能像我们期待的那样工作,
    // 因为 'a' 是第 0 位置上的(第一个)字符。
    if ($pos === false) {
       echo "字符串 '$findme' 在 '$mystring'中未找到!";
    } else {
       echo "字符串 '$findme' 在 '$mystring'中找到。";
       echo " 它的位置是: $pos";
    }
    ?>
    
    尝试一下
  • 相关函数

    stripos() - 查找字符串首次出现的位置(不区分大小写)
    strrpos() - 计算指定字符串在目标字符串中最后一次出现的位置
    strripos() - 计算指定字符串在目标字符串中最后一次出现的位置(不区分大小写)
    strstr() - 查找字符串的首次出现
    strpbrk() - 在字符串中查找一组字符的任何一个字符
    substr() - 返回字符串的子串
    preg_match() - 执行匹配正则表达式