$url = parse_url('https://plus.google.com/+erikedgren');
$address = ltrim(rtrim($url['path'], '/'), '/');
echo $address;
$address
выходы plus.google.com/ erikedgren
. Зачем? И как я могу решить эту проблему?parse_url заменяет знак «плюс» пробелом
РЕДАКТИРОВАТЬ
Код выше выводит +erikedgren
. Но когда я заменяю адрес в $url
$_GET['u']
(от parse_url(https://plu...)
до parse_url($_GET['u'])
), я получаю plus.google.com/ erikedgren
. Позвольте мне объяснить, как работает моя система.
Когда я нажимаю ссылку на своем веб-сайте на своем локальном сервере (я еще не опубликовал обновление), URL-адрес для внешних адресов выглядит так: http://192.168.1.135/erik-edgren/url/https://plus.google.com/+erikedgren
.
Последняя часть с адресом extern, является то, что $_GET['u']
выбирает. Вот как выглядит RewriteRule для него: RewriteRule ^url/(.*)$ get-url.php?u=$ 1
(без пробелов между $ и 1).
Скопировал ваш точный код, '$ address' output" + erikedgren ", как и ожидалось, без' plus.google.com'. Не удалось воспроизвести проблему. Пожалуйста, предоставьте дополнительную информацию. –
@mistermartin Это было действительно странно. См. Мой обновленный вопрос. – Erik