Функция PHP substr

string substr (string string, int start [, int length])

substr возвращает подстроку строки string длиной length, начинающегося с start символа по счету.

Если start неотрицателен, возвращаемая подстрока начинается в позиции start от начала строки, считая от нуля. Например, в строке 'abcdef', в позиции 0 находится символ 'a', в позиции 2 - символ 'c', и т.д.

Пример использования substr

<?php
   $rest = substr("abcdef", 1); // возвращает "bcdef"
   $rest = substr("abcdef", 1, 3); // возвращает "bcd"
   $rest = substr("abcdef", 0, 4); // возвращает "abcd"
   $rest = substr("abcdef", 0, 8); // возвращает "abcdef"

   // к отдельным символам можно обращаться с помощью фигурных скобок
   $string = 'abcdef';
   echo $string{0}; // выводит a
   echo $string{3}; // выводит d
?>

Если start отрицательный, возвращаемая подстрока начинается с start символа с конца строки string.

Использование отрицательного start

<?php
   $rest = substr("abcdef", -1);    // возвращает "f"
   $rest = substr("abcdef", -2);    // возвращает "ef"
   $rest = substr("abcdef", -3, 1); // возвращает "d"
?>

Если length положительный, возвращаемая строка будет не длиннее length символов. Если длина строки string меньше или равна start символов, возвращается FALSE.

Если length отрицательный, то будет отброшено указанное этим аргументом число символов с конца строки string. Если при этом позиция начала подстроки, определяемая аргументом start, находится в отброшенной части строки, возвращается пустая строка.

Использование отрицательного length

<?php
   $rest = substr("abcdef", 0, -1);  // возвращает "abcde"
   $rest = substr("abcdef", 2, -1);  // возвращает "cde"
   $rest = substr("abcdef", 4, -4);  // возвращает ""
   $rest = substr("abcdef", -3, -1); // возвращает "de"
?>

См. также описание функций strrchr, substr_replace, ereg, trim и mb_substr.