<?php
var_dump(areUrlsTheSame
('http://e...content-available-to-author-only...e.com', 'http://e...content-available-to-author-only...e.com/')); var_dump(areUrlsTheSame
('http://e...content-available-to-author-only...e.com', 'http://e...content-available-to-author-only...e.com/#')); var_dump(areUrlsTheSame
('http://e...content-available-to-author-only...e.com', 'https://e...content-available-to-author-only...e.com/')); var_dump(areUrlsTheSame
('http://e...content-available-to-author-only...e.com', 'http://e...content-available-to-author-only...e.com/foo'));
function areUrlsTheSame($url1, $url2)
{
$mustMatch = array_flip(['host', 'port', 'path']); $defaults = ['path' => '/']; // if not present, assume these
return $url1 === $url2;
}
PD9waHAKCnZhcl9kdW1wKGFyZVVybHNUaGVTYW1lKCdodHRwOi8vZS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5jb20nLCAnaHR0cDovL2UuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLmUuY29tLycpKTsKdmFyX2R1bXAoYXJlVXJsc1RoZVNhbWUoJ2h0dHA6Ly9lLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5lLmNvbScsICdodHRwOi8vZS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5jb20vIycpKTsKdmFyX2R1bXAoYXJlVXJsc1RoZVNhbWUoJ2h0dHA6Ly9lLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5lLmNvbScsICdodHRwczovL2UuLi5jb250ZW50LWF2YWlsYWJsZS10by1hdXRob3Itb25seS4uLmUuY29tLycpKTsKdmFyX2R1bXAoYXJlVXJsc1RoZVNhbWUoJ2h0dHA6Ly9lLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5lLmNvbScsICdodHRwOi8vZS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5jb20vZm9vJykpOwoKZnVuY3Rpb24gYXJlVXJsc1RoZVNhbWUoJHVybDEsICR1cmwyKQp7CiAgICAkbXVzdE1hdGNoID0gYXJyYXlfZmxpcChbJ2hvc3QnLCAncG9ydCcsICdwYXRoJ10pOwogICAgJGRlZmF1bHRzICA9IFsncGF0aCcgPT4gJy8nXTsgLy8gaWYgbm90IHByZXNlbnQsIGFzc3VtZSB0aGVzZQogICAgJHVybDEgPSBhcnJheV9pbnRlcnNlY3Rfa2V5KHBhcnNlX3VybCgkdXJsMSksICRtdXN0TWF0Y2gpICsgJGRlZmF1bHRzOwogICAgJHVybDIgPSBhcnJheV9pbnRlcnNlY3Rfa2V5KHBhcnNlX3VybCgkdXJsMiksICRtdXN0TWF0Y2gpICsgJGRlZmF1bHRzOwoKICAgIHJldHVybiAkdXJsMSA9PT0gJHVybDI7Cn0=