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

Форум для тех кто начинает осваивать язык php.
Аватара пользователя
Slash
Администратор
Сообщения: 2031
Поблагодарили: 62 раза

Обрезать строку до и после определенного символа (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]; 

Данная конструкция выводит на экран:
www.google.com

Читайте ещё: Обрезать строку с конца до определенного символа (PHP)

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

Вернуться в «PHP»

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

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