PHP substr 返回字符串的子串的例子

substr (PHP 4, PHP 5)

substr — 返回字符串的子串

说明:

string 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。

Example #1 使用负数 start

  1. <?php
  2. $rest = substr("abcdef", -1); // 返回 "f"
  3. $rest = substr("abcdef", -2); // 返回 "ef"
  4. $rest = substr("abcdef", -3, 1); // 返回 "d"
  5. ?>

length

如果提供了正数的 length,返回的字符串将从 start 处开始最多包括 length 个字符(取决于string 的长度)。

如果提供了负数的 length,那么 string 末尾处的许多字符将会被漏掉(若 start 是负数则从字符串尾部算起)。如果 start 不在这段文本中,那么将返回一个空字符串。

如果提供了值为 0,FALSE 或 NULL 的 length,那么将返回一个空字符串。

如果没有提供 length,返回的子字符串将从 start 位置开始直到字符串结尾。

Example #2 使用负数 length

  1. <?php
  2. $rest = substr("abcdef", 0, -1); // 返回 "abcde"
  3. $rest = substr("abcdef", 2, -1); // 返回 "cde"
  4. $rest = substr("abcdef", 4, -4); // 返回 ""
  5. $rest = substr("abcdef", -3, -1); // 返回 "de"
  6. ?>

返回值:

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

范例:

Example #3 substr() 基本用法

  1. <?php
  2. echo substr('abcdef', 1); // bcdef
  3. echo substr('abcdef', 1, 3); // bcd
  4. echo substr('abcdef', 0, 4); // abcd
  5. echo substr('abcdef', 0, 8); // abcdef
  6. echo substr('abcdef', -1, 1); // f
  7. // 访问字符串中的单个字符
  8. // 也可以使用中括号
  9. $string = 'abcdef';
  10. echo $string[0]; // a
  11. echo $string[3]; // d
  12. echo $string[strlen($string)-1]; // f
  13. ?>

错误/异常,错误时返回 FALSE。

  1. <?php
  2. var_dump(substr('a', 1)); // bool(false)
  3. ?>