Как отправить почту php с международным получателем

Как отправить почту php с международным получателем?

например: Как отправить электронное письмо на адрес δοκιμή@παράδειγμα.δοκιμή с помощью почтовой функции php или PHPMailer?

Могу ли я преобразовать локальную часть + серверную часть адреса электронной почты Unicode в IDNA, а затем отправить электронное письмо с помощью php?

Есть ли бесплатный сервис, предлагающий международный адрес электронной почты?!

Похожие темы:

Символ PHPMailer – по адресу получателя

https://github.com/PHPMailer/PHPMailer/issues/251

https://gmail.googleblog.com/2014/08/a-first-step-toward-more-global-email.html

https://en.wikipedia.org/wiki/Email_address#Internationalization


person Alex    schedule 09.06.2019    source источник


Ответы (1)


Использование Unicode в локальной части (бит перед @) требует поддержки расширения SMTP SMTPUTF8, которое поддерживается в gmail и других почтовых серверах, включая postfix.

В настоящее время нет, вы не можете использовать это с PHPMailer (хотя это планируется), и, насколько мне известно, никакие другие распространенные библиотеки электронной почты PHP также не поддерживают это.

Вы можете использовать IDN для доменов Unicode (после @), потому что оно имеет сопоставление с ASCII, и PHPMailer поддерживает это. Однако я пока не уверен, что IDN можно использовать для доменов верхнего уровня, поэтому я не думаю, что приведенный вами пример домена будет работать.

person Synchro    schedule 09.06.2019
comment
Могу ли я использовать функцию почты, чтобы отправить электронное письмо на следующий адрес (локальная часть = utf8) + (доменное имя преобразовано в IDN) + (домен верхнего уровня = COM): δοκιμή@xn--hxajbheg2az3al.com - person Alex; 10.06.2019
comment
Возможно, вы сможете заставить это работать, вызвав mail() напрямую (при условии, что он просто проходит через то, что вы ему даете); PHPMailer не позволит вам сделать это, поскольку он не сможет проверить адрес, прежде чем вы приступите к отправке. Самая сложная часть поддержки SMTPUTF8 заключается не в том, чтобы разрешить этот материал, а в том, чтобы иметь дело с понижением версии при подключении к серверу, который его не поддерживает, как описано в RFC6857. Мне было бы интересно узнать, сможете ли вы заставить его работать. - person Synchro; 10.06.2019