Php вывести строку до определенного символа

Функция substr

Функция substr вырезает и возвращает подстроку из строки. Сама строка при этом не изменяется. Первым параметром функция принимает строку, вторым — позицию символа, откуда следует начинать вырезание, а третьим — количество символов. Учтите, что нумерация символов строки начинается с нуля.

Второй параметр может быть отрицательным — в этом случае отсчет начнется с конца строки, при этом последний символ будет иметь номер -1 .

Третий параметр можно не указывать — в этом случае отрезание произойдет до конца строки.

Данная функция неправильно работает с кириллицей. Используйте функцию mb_substr (она работает аналогичным образом, но корректно обрабатывает кириллицу).

Синтаксис

Пример

Давайте вырежем 3 символа из строки позиции 1 (со второго символа, так как первый имеет номер 0):

Результат выполнения кода:

Пример

Давайте вырежем все символы до конца строки, начиная со второго (он имеет номер 1):

Результат выполнения кода:

Пример

Давайте вырежем третий и второй символы с конца, для этого укажем начало вырезания -3 (это номер третьего символа с конца), а количество символов — 2 :

Результат выполнения кода:

Пример

Давайте вырежем 2 последних символа, для этого укажем позицию предпоследнего символа (это -2), а третий параметр не укажем — в этом случае обрезание будет до конца строки:

Результат выполнения кода:

Пример

Давайте вырежем последний символ:

Результат выполнения кода:

Смотрите также

Источник

substr

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

Список параметров

Входная строка. Должна содержать хотя бы один символ.

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

Читайте также:  Marquee in html codes

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

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

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

$rest = substr ( «abcdef» , — 1 ); // возвращает «f»
$rest = substr ( «abcdef» , — 2 ); // возвращает «ef»
$rest = substr ( «abcdef» , — 3 , 1 ); // возвращает «d»
?>

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

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

Если указан параметр length и является одним из 0, FALSE или NULL , то будет возвращена пустая строка.

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

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

$rest = substr ( «abcdef» , 0 , — 1 ); // возвращает «abcde»
$rest = substr ( «abcdef» , 2 , — 1 ); // возвращает «cde»
$rest = substr ( «abcdef» , 4 , — 4 ); // возвращает false
$rest = substr ( «abcdef» , — 3 , — 1 ); // возвращает «de»
?>

Возвращаемые значения

Возвращает извлеченную часть строки, или FALSE в случае возникновения ошибки или пустую строку string .

Список изменений

Версия Описание
5.2.2 — 5.2.6 Если параметр start указывает на позицию с отрицательной обрезкой, возвращается FALSE . Другие версии возвращают строку с начала.

Примеры

Пример #3 Базовое использование substr()

echo substr ( ‘abcdef’ , 1 ); // bcdef
echo substr ( ‘abcdef’ , 1 , 3 ); // bcd
echo substr ( ‘abcdef’ , 0 , 4 ); // abcd
echo substr ( ‘abcdef’ , 0 , 8 ); // abcdef
echo substr ( ‘abcdef’ , — 1 , 1 ); // f

Читайте также:  Boost build python version

// Получить доступ к отдельному символу в строке
// можно также с помощью «квадратных скобок»
$string = ‘abcdef’ ;
echo $string [ 0 ]; // a
echo $string [ 3 ]; // d
echo $string [ strlen ( $string )- 1 ]; // f

Пример #4 substr() и приведение типов

class apple public function __toString () return «green» ;
>
>

echo «1) » . var_export ( substr ( «pear» , 0 , 2 ), true ). PHP_EOL ;
echo «2) » . var_export ( substr ( 54321 , 0 , 2 ), true ). PHP_EOL ;
echo «3) » . var_export ( substr (new apple (), 0 , 2 ), true ). PHP_EOL ;
echo «4) » . var_export ( substr ( true , 0 , 1 ), true ). PHP_EOL ;
echo «5) » . var_export ( substr ( false , 0 , 1 ), true ). PHP_EOL ;
echo «6) » . var_export ( substr ( «» , 0 , 1 ), true ). PHP_EOL ;
echo «7) » . var_export ( substr ( 1.2e3 , 0 , 4 ), true ). PHP_EOL ;
?>

Результат выполнения данного примера:

1) 'pe' 2) '54' 3) 'gr' 4) '1' 5) false 6) false 7) '1200'

Ошибки

Возвращает FALSE в случае ошибки.

Смотрите также

  • strrchr() — Находит последнее вхождение символа в строке
  • substr_replace() — Заменяет часть строки
  • preg_match() — Выполняет проверку на соответствие регулярному выражению
  • trim() — Удаляет пробелы (или другие символы) из начала и конца строки
  • mb_substr() — Возвращает часть строки
  • wordwrap() — Переносит строку по указанному количеству символов
  • Посимвольный доступ и изменение строки

Источник

Оцените статью