Sto utilizzando Zend_Mail e voglio personalizzare il nome del mittente.Nome del mittente UTF-8 in Zend_Mail?
Voglio il nome del mittente di essere FooBar 爱 你 Ryan (dove 'Ryan' viene sostituito con il nome del destinatario e 爱 你 viene sostituito con la traduzione di 'ama' nella lingua del destinatario, just like CD Baby does).
Ho provato base64_encode e mb_encode_mimeheader() e altre cose come:
mb_internal_encoding('UTF-8');
mb_http_output('UTF-8');
iconv_set_encoding("input_encoding", 'UTF-8');
iconv_set_encoding("output_encoding", 'UTF-8');
iconv_set_encoding("internal_encoding", 'UTF-8');
header('Content-Type:text/html; charset=' . 'UTF-8');
Esso genera questo come il mittente: '=?UTF-8?B?RXh0cmFidXjniLHkvaByY3dhbHNoQGV4dHJhYnV4LmNvbQ==?= <[email protected]>'
E poi che appare nel mio Gmail come (unknown sender)
.
Qualche idea?
Puoi pubblicare il codice che imposta effettivamente il campo di intestazione dell'e-mail 'From:'? – Asaph
$ sendername = '=? UTF-8? B?'. Base64_encode ($ sendername). '? ='; –
Più recentemente ho provato questo: '$ senderName =" =? UTF-8? B? " . base64_encode ($ email-> getFromName()). "? ="; $ mail-> clearFrom(); $ mail-> setFrom ($ email-> getFrom(), $ senderName) ;, che è anche quello che suggeriva Arda. – Ryan