У меня есть простой код PHP, который отправляет URL-адрес пользователю по электронной почте с адресом электронной почты, включенным в URL-адрес.Я использовал rawurlencode () для кодирования адреса электронной почты перед его отправкой.
Почтовый клиент (в данном случае Hotmail) правильно отображает URL со знаком @, закодированным как% 40.Однако когда я нажимаю на ссылку, браузер снова преобразуется в @, что приводит к искаженному URL.
Любые предложения о том, как обеспечить, чтобы почтовый клиент или браузер (не уверен, кто является виновником) не декодировал% 40 в URL для знака @?Смотрите код ниже.
$resetlink = "http://www.domain.com/resetpassword/".rawurlencode($email)."/".$email_hash;