Обрезать строку до и после определенного символа (PHP)

Форум для тех кто начинает осваивать язык php.
Аватара пользователя
Slash
Администратор
Сообщения: 2122
Зарегистрирован: Сб авг 11, 2012 7:39 am
Поблагодарили: 75 раз

Обрезать строку до и после определенного символа (PHP)

Сообщение Slash » Пн окт 20, 2014 1:11 pm

Здравствуйте.
Была необходимость разобрать строку на куски до и после определенного символа.
Я разбирал URL на части до и после слеша /, для редиректа внешних ссылок, что бы вытащить домен сайта. Разбивал строку при помощи функции explode(), данная функция для этого и предназначена, что бы строки разбивать на подстроки.

Вот как я это сделал:
Забил URL в переменную:

Код: Выделить всё

$value = 'https://www.google.com/doodles/claude-debussys-151st-birthday'; 
В данном URL (как и в любом другом) есть несколько слешов /, что мне и надо, они та и будут служить мне тем символом, по который строка будет обрезаться.
Дальше разбиваю URL на подстроки, до и после слеша:

Код: Выделить всё

$domain = explode('/', $value); 
Строка разбивается на следующие подстроки: https:, www.google.com, doodles, claude-debussys-151st-birthday, у каждой подстроки есть свой порядковый номер, начиная с ноля (массив). Получается так:

Код: Выделить всё

echo $domain[0]; # Выводит на экран - https:
echo $domain[1]; # Выводит на экран - (пустая строка, так как между двумя слешов ни чего нет)
echo $domain[2]; # Выводит на экран - www.google.com
echo $domain[3]; # Выводит на экран - doodles
echo $domain[4]; # Выводит на экран - claude-debussys-151st-birthday   
В моем случаи нужна переменная $domain[2].
Теперь соберем код в кучу:

Код: Выделить всё

$value = 'https://www.google.com/doodles/claude-debussys-151st-birthday';
$domain = explode('/', $value); 
echo $domain[2]; 
Данная конструкция выводит на экран:
Читайте ещё: Обрезать строку с конца до определенного символа (PHP)

Спасибо за внимание.

Реклама

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость