@unfapable

Как удалить последний компонент ссылки?

Как получить из ссылки site.ru/part1/part2/part3/ ссылку вида - site.ru/part1/part2/ - то есть удалить последний слэш и путь до предыдущего слэша, слэш в конце важен. Как это лучше сделать на PHP?
  • Вопрос задан
  • 323 просмотра
Решения вопроса 1
27cm
@27cm
TODO: Написать статус
echo preg_replace('/[^\/]+\/$/', '', 'site.ru/part1/part2/part3/');
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
maximw
@maximw
$urlParts = parse_url('http://site.ru/part1/part2/part3/');
$pathSections = explode('/',$urlParts['path']);
$pathSections = array_slice($pathSections, 0, -2); // -2 т.к. последний элемент секций path пустой из-за закрывающего слеша
echo $urlParts['scheme'].'://'.$urlParts['host'].implode('/',$pathSections).'/'; // тут надо доработать если в URL есть другие элементы
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы