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() - 打断字符串为指定数量的字串