PHP substr 字符串函数

  • 定义和用法

    substr - 返回字符串的子串
  • 版本支持

    PHP4 PHP5 PHP7
    支持 支持 支持
    V7.0.0 如果 string 的字符串长度与 start 相同时将返回一个空字符串。在之前的版本中,这种情况将返回 FALSE 。
    V5.2.2 - 5.2.6 如果start参数指示否定截断的位置或更高,则返回false。 其他版本从开始获取字符串。
  • 语法

    substr ( string $string , int $start [, int $length ] )   
    
    返回字符串 string 由 start 和 length 参数指定的子字符串。
  • 参数

    参数 必需的 描述
    string 是 输入字符串。必须至少有一个字符。
    start 是 如果 start 是非负数,返回的字符串将从 string 的 start 位置开始,从 0 开始计算。例如,在字符串 “abcdef” 中,在位置 0 的字符是 “a”,位置 2 的字符串是 “c” 等等。如果 start 是负数,返回的字符串将从 string 结尾处向前数第 start 个字符开始。如果 string 的长度小于 start,将返回 FALSE。
    length 否 如果提供了正数的 length,返回的字符串将从 start 处开始最多包括 length 个字符(取决于 string 的长度)。如果提供了负数的 length,那么 string 末尾处的 length 个字符将会被省略(若 start 是负数则从字符串尾部算起)。如果 start 不在这段文本中,那么将返回 FALSE。 如果提供了值为 0,FALSE 或 NULL 的 length,那么将返回一个空字符串。 如果没有提供 length,返回的子字符串将从 start 位置开始直到字符串结尾。
  • 返回值

    返回提取的子字符串, 或者在失败时返回 FALSE。
  • 示例

    <?php
    echo substr('abcdef', 1);     // bcdef
    echo "<br/>";
    echo substr('abcdef', 1, 3);  // bcd
    echo "<br/>";
    echo substr('abcdef', 0, 4);  // abcd
    echo "<br/>";
    echo substr('abcdef', 0, 8);  // abcdef
    echo "<br/>";
    echo substr('abcdef', -1, 1); // f
    echo "<br/>";
    // 访问字符串中的单个字符
    // 也可以使用中括号
    $string = 'abcdef';
    echo $string[0];                 // a
    echo "<br/>";
    echo $string[3];                 // d
    echo "<br/>";
    echo $string[strlen($string)-1]; // f
    ?>
    
    尝试一下
  • 相关函数

    strrchr() - 查找指定字符在字符串中的最后一次出现
    substr_replace() - 替换字符串的子串
    preg_match() - 执行匹配正则表达式
    trim() - 去除字符串首尾处的空白字符(或者其他字符)
    mb_substr() - 获取部分字符串
    wordwrap() - 打断字符串为指定数量的字串