Есть ссылка https://site.com/ru/moskov/baby/andyushak-evgeniya-petrovna
Нужно ее обрезать чтобы получить baby/andyushak-evgeniya-petrovnа..
Посоветовали вариант
substr(substr($_SERVER['REQUEST_URI'], 1), strpos(substr($_SERVER['REQUEST_URI'], 1), '/') + 1)
он работает, но убирает только https://site.com/ru/
а нужно и после второго слеша убирать
Если сайт один и тот же и города не меняются (все время речь идет про Москву), то вот так:
$url = "https://site.com/ru/moskov/baby/andyushak-evgeniya-petrovna";
$url = str_replace("https://site.com/ru/moskov/", "", $url);
Этот код просто уберет из ваших ссылок "https://site.com/ru/moskov/"
(соответственно вам нужно заменить на своё).
результат: baby/andyushak-evgeniya-petrovna
Если же города меняются и меняются языки, но структура остается такой же, то вот регулярное выражение, которое вырежет вам этот кусок. А именно уберет из ссылки сначала домен http://site.ru/
(как http
, так и https
) и затем два "контейнера" между слешами. Первый - языковой (/ru/
), второй - город (/moskov/
).
Данные в них могут меняться, например язык на /en/
а город на /london/
.
(https?|http):\/\/\S*?\.\S*?\/\S*?\/\S*?\/
Я в регулярных выражениях на данный момент мягко говоря плаваю, и уверен что от идеала эта регулярное выражение сильно далеко, но с вашей задачей справится.
$url = "https://site.com/ru/moskov/baby/andyushak-evgeniya-petrovna";
$url = preg_replace('#(https?|http):\/\/\S*?\.\S*?\/\S*?\/\S*?\/#', "", $url);
результат: baby/andyushak-evgeniya-petrovna
получить baby/andyushak-evgeniya-petrovnа
Если структура URL не меняется, тогда можно обойтись и без регулярных выражений:
$str = 'https://site.com/ru/moskov/baby/andyushak-evgeniya-petrovna';
$str = join('/', array_slice(explode('/', $str), 5));
echo $str;
Результат
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Как в кратчайшие сроки сделать портфолио? Имеется опыт в разработке под PHP 3 года, laravel - 05 года
Вообщем есть приложение Laravel + VueJS на одной странице, точнее на нескольких страницах есть пагинация сделанная таким образом:
Как можно отследить перезагрузку страницы? Просто нажатие f5 - это отловить событием keyupА как, к примеру, если нажмут на перезагрузку страницы...
Ситуация заключается в следующемЕсть поисковая строка с автозаполнением значений